- Timestamp:
- 01/09/10 18:15:02 (2 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/docx4j/src/main/java/org/docx4j/openpackaging/io/SaveToZipFile.java
r1003 r1004 26 26 import java.io.FileOutputStream; 27 27 import java.io.IOException; 28 import java.io.InputStream;29 28 import java.io.OutputStream; 30 29 import java.net.URI; 31 import java.util.Enumeration;32 import java.util.Iterator;33 30 import java.util.zip.ZipEntry; 34 import java.util.zip.ZipFile;35 31 import java.util.zip.ZipOutputStream; 36 32 … … 44 40 import org.docx4j.openpackaging.parts.WordprocessingML.BinaryPart; 45 41 import org.docx4j.openpackaging.parts.relationships.RelationshipsPart; 46 import org.docx4j.relationships.Relationships;47 42 import org.docx4j.relationships.Relationship; 48 49 import org.dom4j.Document;50 import org.dom4j.DocumentException;51 import org.dom4j.io.OutputFormat;52 import org.dom4j.io.SAXReader;53 import org.dom4j.io.XMLWriter;54 43 55 44 … … 107 96 108 97 109 // 3. Get[Content_Types].xml98 // 3. Save [Content_Types].xml 110 99 ContentTypeManager ctm = p.getContentTypeManager(); 111 deprecatedSaveRawXmlPart(out, "[Content_Types].xml", ctm.getDocument() ); 100 out.putNextEntry(new ZipEntry("[Content_Types].xml")); 101 ctm.marshal(out); 102 out.closeEntry(); 112 103 113 104 // 4. Start with _rels/.rels … … 228 219 } 229 220 230 protected void deprecatedSaveRawXmlPart(ZipOutputStream out, String partName, Document xml) throws Docx4JException {231 232 try {233 // Add ZIP entry to output stream.234 out.putNextEntry(new ZipEntry(partName));235 236 237 OutputFormat format = OutputFormat.createPrettyPrint();238 format.setEncoding("UTF-8");239 XMLWriter writer = new XMLWriter( out, format );240 writer.write( xml );241 // Complete the entry242 out.closeEntry();243 log.info( "PUT SUCCESS: " + partName);244 } catch (Exception e ) {245 e.printStackTrace();246 throw new Docx4JException("Failed to put " + partName, e);247 }248 249 }250 221 251 222 /* recursively … … 403 374 404 375 405 406 private void dumpZipFileContents(ZipFile zf) {407 Enumeration entries = zf.entries();408 // Enumerate through the Zip entries until we find the one named409 // '[Content_Types].xml'.410 while (entries.hasMoreElements()) {411 ZipEntry entry = (ZipEntry) entries.nextElement();412 log.info( "\n\n" + entry.getName() + "\n" );413 InputStream in = null;414 try {415 in = zf.getInputStream(entry);416 } catch (IOException e) {417 e.printStackTrace() ;418 }419 SAXReader xmlReader = new SAXReader();420 Document xmlDoc = null;421 try {422 xmlDoc = xmlReader.read(in);423 } catch (DocumentException e) {424 // Will land here for binary files eg gif file425 e.printStackTrace() ;426 }427 debugPrint(xmlDoc);428 429 }430 431 }432 433 434 private void debugPrint( Document coreDoc) {435 try {436 OutputFormat format = OutputFormat.createPrettyPrint();437 XMLWriter writer = new XMLWriter( System.out, format );438 writer.write( coreDoc );439 } catch (Exception e ) {440 e.printStackTrace();441 }442 }443 444 445 446 376 }
Note: See TracChangeset
for help on using the changeset viewer.
