1. Produkty
  2.   Przetwarzanie tekstu
  3.   Java
  4.   Apache POI HWPF

Apache POI HWPF

 
 

Przetwarzaj dokumenty binarne Microsoft Word

Twórz, czytaj, manipuluj i konwertuj pliki DOC za pomocą biblioteki Java Open Source.

Apache POI HWPF to port Apache POI dla formatu plików Microsoft Word DOC. Zapewnia funkcjonalność odczytu i zapisu plików DOC bez konieczności korzystania z dodatkowych bibliotek. Zapewnia również ograniczoną obsługę tylko do odczytu dla starszych formatów plików Word 6 i Word 95. Na tym etapie HWPF zajmuje się głównie tekstem sformatowanym. Zapewnia podstawowe wyodrębnianie tekstu, wyodrębnianie określonego tekstu, dostęp do nagłówków i stopek oraz zmianę funkcji tekstu.

Ułatwia programistom tworzenie dokumentów MS-Word z możliwością manipulowania akapitami, dodawania różnych stylów do tekstu, dodawania tabeli, wyodrębniania tekstu i wielu innych.

Previous Next

Pierwsze kroki z Apache POI HWPF

Przede wszystkim musisz mieć zainstalowany zestaw Java Development Kit (JDK) w swoim systemie. Jeśli już go masz, przejdź do strony pobieranie Apache POI, aby pobrać najnowszą stabilną wersję w archiwum. Wyodrębnij zawartość pliku ZIP w dowolnym katalogu, z którego wymagane biblioteki można połączyć z programem Java. To wszystko!

Odwoływanie się do punktów POI Apache w projekcie Java opartym na Maven jest jeszcze prostsze. Wszystko, czego potrzebujesz, to dodać następującą zależność do pliku pom.xml i pozwolić swojemu środowisku IDE pobierać i odwoływać się do plików Apache POI Jar.

Zależność Apache POI Maven

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

Twórz i modyfikuj dokumenty Word za pomocą interfejsów API Java

Apache POI HWPF umożliwia programistom tworzenie nowych dokumentów Word w formatach plików DOC. API pozwala również programistom modyfikować istniejące dokumenty Word zgodnie z własnymi potrzebami. Interfejs API obsługuje również dodawanie akapitu w dokumencie programu Word, stosowanie wyrównania tekstu i stylów czcionek oraz wiele innych.

Zmodyfikuj plik DOC - 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();

Konwertuj dokumenty Word na inne formaty za pomocą Java

pache POI HWPF umożliwia programistom łatwą konwersję dokumentów Microsoft Word do dowolnych obsługiwanych formatów plików. Obecnie programiści Java mogą konwertować dokumenty Word do formatu HTML, FO i Text. Pakiet org.apache.poi.hwpf.converter zawiera konwertery Word-to-HTML i Word-to-FO.

Konwertuj DOC na 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();

Czytaj tekst z pliku DOC

Apache POI HWPF udostępnia klasę WordExtractor do odczytywania tekstu z pliku w formacie Microsoft Word DOC. Możesz wyodrębnić tekst z pliku za pomocą kilku linii kodu.

Wyodrębnij tekst z pliku DOC

// 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());

Dodaj niestandardowy nagłówek i stopkę do DOC

Apache POI HWPF umożliwia programistom Java tworzenie niestandardowych nagłówków i stopek w dokumentach programu Word. Apache POI HWPF jest opisany jako „umiarkowanie funkcjonalny”. Zapewnia obsługę podstawowego wyodrębniania tekstu, wyodrębniania określonego tekstu, dostępu do nagłówków i stopek oraz zmiany funkcji tekstu. Metoda getText() może być użyta do pobrania tekstu ze wszystkich akapitów lub getParagraphText() do pobrania tekstu z każdego akapitu po kolei. 

Zarządzaj niestandardowym nagłówkiem i stopką w pliku Word DOC


// 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);
 Polski