1. Produkter
  2.   Ordbehandling
  3.   Java
  4.   Apache POI HWPF

Apache POI HWPF

 
 

Bearbeta binära Microsoft Word-dokument

Skapa, läs, manipulera och konvertera DOC-filer via Open Source Java Library.

Apache POI HWPF är en Apache POI-port för Microsoft Word DOC-filformat. Det ger funktionalitet för att läsa och skriva DOC-filer utan att behöva några ytterligare bibliotek. Det ger också begränsat skrivskyddat stöd för de äldre Word 6- och Word 95-filformaten. I detta skede sysslar HWPF huvudsakligen med formaterad text. Det ger grundläggande textextraktion, specifik textextraktion, tillgång till sidhuvud och sidfötter och ändrade textfunktioner.

Det underlättar utvecklare att skapa MS-Word-dokument med möjligheten att manipulera stycken, lägga till olika stilar i text, lägga till en tabell, extrahera text och mycket mer.

Previous Next

Komma igång med Apache POI HWPF

Först och främst måste du ha Java Development Kit (JDK) installerat på ditt system. Om du redan har det, fortsätt till Apache POI:s nedladdningssida för att få den senaste stabila utgåvan i ett arkiv. Extrahera innehållet i ZIP-filen i valfri katalog där de nödvändiga biblioteken kan länkas till ditt Java-program. Det är allt!

Att referera till Apache POI i ditt Maven-baserade Java-projekt är ännu enklare. Allt du behöver är att lägga till följande beroende i din pom.xml och låta din IDE hämta och referera till Apache POI Jar-filer.

Apache POI Maven beroende

<!-- https://mvnrepository.com/artifact/org.apache.poi/poi -->
  <dependency>
    <groupId>org.apache.poi</groupId>
    <artifactId>poi-scratchpad</artifactId>
    <version>4.0.0</version>
  </dependency>
  

Skapa och ändra Word-dokument med hjälp av Java API:er

Apache POI HWPF gör det möjligt för programmerare att skapa nya Word-dokument i DOC-filformat. API:et tillåter också utvecklare att modifiera befintliga Word-dokument efter sina egna behov. API:et stöder också att lägga till ett stycke i ett Word-dokument, tillämpa textjusteringar och teckensnittsstilar och mycket mer.

Ändra 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();

Konvertera Word-dokument till andra format med Java

pache POI HWPF gör det möjligt för mjukvaruutvecklare att enkelt konvertera Microsoft Word-dokument till alla filformat som stöds. För närvarande kan Java-utvecklare konvertera Word-dokument till HTML-, FO- och textformat. Paketet org.apache.poi.hwpf.converter innehåller Word-to-HTML och Word-to-FO-konverterare.

Konvertera DOC till 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 text från DOC-fil

Apache POI HWPF tillhandahåller WordExtractor-klass för att läsa text från Microsoft Word DOC-filformat. Du kan extrahera text från filen med bara några rader kod.

Extrahera text från 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());

Lägg till anpassad sidhuvud och sidfot i DOC

Apache POI HWPF gör det möjligt för Java-utvecklare att skapa anpassade sidhuvuden och sidfötter i Word-dokument. Apache POI HWPF beskrivs som "måttligt funktionell". Det ger stöd för grundläggande textextraktion, specifik textextraktion, tillgång till sidhuvuden och sidfötter och ändrade textfunktioner. Metoden getText() kan användas för att hämta texten från alla stycken, eller getParagraphText() kan användas för att hämta texten från varje stycke i tur och ordning. 

Hantera anpassad sidhuvud och sidfot 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);
 Svenska