Apache POI HWPF
Behandle binære Microsoft Word-dokumenter
Opret, læs, manipuler og konverter DOC-filer via Open Source Java Library.
Apache POI HWPF er en Apache POI-port til Microsoft Word DOC-filformat. Det giver funktionalitet til at læse og skrive DOC-filer uden behov for yderligere biblioteker. Det giver også begrænset skrivebeskyttet støtte til de ældre Word 6- og Word 95-filformater. På dette stadium er HWPF hovedsageligt beskæftiget med formateret tekst. Det giver grundlæggende tekstudtrækning, specifik tekstudtrækning, adgang til sidehoveder og sidefødder og ændring af tekstfunktioner.
Det letter udviklere at oprette MS-Word-dokumenter med evnen til at manipulere afsnit, tilføje forskellige stilarter til tekst, tilføje en tabel, udtrække tekst og meget mere.
Kom godt i gang med Apache POI HWPF
Først og fremmest skal du have Java Development Kit (JDK) installeret på dit system. Hvis du allerede har det, så fortsæt til Apache POI's download-side for at få den seneste stabile udgivelse i et arkiv. Udpak indholdet af ZIP-filen i en hvilken som helst mappe, hvorfra de nødvendige biblioteker kan linkes til dit Java-program. Det er alt!
Det er endnu nemmere at henvise til Apache POI i dit Maven-baserede Java-projekt. Alt du behøver er at tilføje følgende afhængighed i din pom.xml og lade din IDE hente og referere til Apache POI Jar-filer.
Apache POI Maven afhængighed
<!-- https://mvnrepository.com/artifact/org.apache.poi/poi -->
<dependency>
<groupId>org.apache.poi</groupId>
<artifactId>poi-scratchpad</artifactId>
<version>4.0.0</version>
</dependency>
Opret og rediger Word-dokumenter ved hjælp af Java API'er
Apache POI HWPF gør det muligt for programmører at oprette nye Word-dokumenter i DOC-filformater. API'et giver også udviklere mulighed for at ændre eksisterende Word-dokumenter efter deres egne behov. API'et understøtter også tilføjelse af et afsnit i et Word-dokument, anvendelse af tekstjusteringer og skrifttypestile og meget mere.
Rediger DOC-fil - Java
// open an empty doc file, using APACHE POI we cannot create .doc file format from scratch
HWPFDocument doc = new HWPFDocument(new FileInputStream("empty.doc"));
Range range = doc.getRange();
// inset text
CharacterRun run = range.insertAfter("File Format Developer Guide - " +
"Learn about computer files that you come across in " +
"your daily work at: www.fileformat.com ");
OutputStream out = new FileOutputStream("document.pdf");
// save document
doc.write(out);
out.close();
Konverter Word-dokumenter til andre formater ved hjælp af Java
pache POI HWPF gør det muligt for softwareudviklere at konvertere Microsoft Word-dokumenter til alle understøttede filformater med lethed. I øjeblikket kan Java-udviklere konvertere Word-dokumenter til HTML-, FO- og tekstformat. Pakken org.apache.poi.hwpf.converter indeholder Word-til-HTML og Word-to-FO-konvertere.
Konverter DOC til HTML
// load document
HWPFDocumentCore wordDocument = WordToHtmlUtils.loadDoc(new FileInputStream("document.doc"));
Document newDocument = DocumentBuilderFactory.newInstance().newDocumentBuilder().newDocument();
// initialize WordToHtmlConverter
WordToHtmlConverter wordToHtmlConverter = new WordToHtmlConverter(newDocument );
// process document
wordToHtmlConverter.processDocument( wordDocument );
StringWriter stringWriter = new StringWriter();
Transformer transformer = TransformerFactory.newInstance().newTransformer();
transformer.setOutputProperty( OutputKeys.INDENT, "yes" );
transformer.setOutputProperty( OutputKeys.ENCODING, "utf-8" );
transformer.setOutputProperty( OutputKeys.METHOD, "html" );
transformer.transform(
new DOMSource( wordToHtmlConverter.getDocument() ),
new StreamResult( stringWriter ) );
// get html
String html = stringWriter.toString();
Læs tekst fra DOC-fil
Apache POI HWPF giver WordExtractor-klassen til at læse tekst fra Microsoft Word DOC-filformat. Du kan udtrække tekst fra filen med kun et par linjer kode.
Uddrag tekst fra en DOC-fil
// load DOC file
FileInputStream fis = new FileInputStream(new File("document.doc"));
// open file
HWPFDocument doc = new HWPFDocument(fis);
// read text
WordExtractor extractor = new WordExtractor(doc);
// display text
System.out.println(extractor.getText());
Føj tilpasset sidehoved og sidefod til DOC
Apache POI HWPF gør det muligt for Java-udviklere at oprette brugerdefinerede sidehoveder og sidefødder i Word-dokumenter. Apache POI HWPF beskrives som "moderat funktionelt". Det giver understøttelse af grundlæggende tekstudtrækning, specifik tekstudtrækning, adgang til sidehoveder og sidefødder og ændring af tekstfunktioner. GetText()-metoden kan bruges til at hente teksten fra alle afsnit, eller getParagraphText() kan bruges til at hente teksten fra hvert afsnit efter tur.
Administrer tilpasset sidehoved og sidefod i Word DOC-fil
// The path to the documents directory.
String dataDir = Utils.getDataDir(ApacheHeaders.class);
POIFSFileSystem fs = null;
fs = new POIFSFileSystem(new FileInputStream(dataDir + "MyHeader.doc"));
HWPFDocument doc = new HWPFDocument(fs);
int pageNumber = 1;
HeaderStories headerStore = new HeaderStories(doc);
String header = headerStore.getHeader(pageNumber);
System.out.println("Header Is: " + header);