1. Produk
  2.   Pemprosesan perkataan
  3.   Java
  4.   Apache POI HWPF

Apache POI HWPF

 
 

Memproses Dokumen Perduaan Microsoft Word

Cipta, Baca, Manipulasi & Tukar fail DOC melalui Perpustakaan Java Sumber Terbuka.

Apache POI HWPF ialah port Apache POI untuk format fail DOC Microsoft Word. Ia menyediakan fungsi untuk membaca dan menulis fail DOC tanpa memerlukan sebarang perpustakaan tambahan. Ia juga menyediakan sokongan baca sahaja terhad untuk format fail Word 6 dan Word 95 yang lebih lama. Pada peringkat ini, HWPF terutamanya berkenaan dengan teks berformat. Ia menyediakan pengekstrakan teks asas, pengekstrakan teks khusus, akses kepada pengepala & pengaki, dan menukar ciri teks.

Ia memudahkan pembangun untuk mencipta Dokumen MS-Word dengan keupayaan untuk memanipulasi perenggan, menambah gaya yang berbeza pada teks, menambah jadual, mengekstrak teks dan banyak lagi.

Previous Next

Bermula dengan Apache POI HWPF

Pertama sekali, anda perlu memasang Java Development Kit (JDK) pada sistem anda. Jika anda sudah memilikinya, teruskan ke halaman muat turun Apache POI untuk mendapatkan keluaran stabil terkini dalam arkib. Ekstrak kandungan fail ZIP dalam mana-mana direktori dari mana perpustakaan yang diperlukan boleh dipautkan ke program Java anda. Itu sahaja!

Merujuk Apache POI dalam projek Java berasaskan Maven anda adalah lebih mudah. Apa yang anda perlukan ialah menambah kebergantungan berikut dalam pom.xml anda dan biarkan IDE anda mengambil dan merujuk fail Apache POI Jar.

Ketergantungan Maven Apache POI

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

Cipta dan Ubah suai Dokumen Word menggunakan API Java

Apache POI HWPF membolehkan pengaturcara mencipta Dokumen Word baharu dalam format fail DOC. API juga membenarkan pembangun mengubah suai Dokumen Word sedia ada mengikut keperluan mereka sendiri. API juga menyokong penambahan perenggan dalam dokumen Word, menggunakan penjajaran teks & gaya fon, dan banyak lagi.

Ubah suai fail 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();

Tukar Dokumen Word kepada Format Lain menggunakan Java

pache POI HWPF membolehkan pembangun Perisian menukar dokumen Microsoft word kepada mana-mana format fail yang disokong dengan mudah. Pada masa ini pembangun Java boleh menukar dokumen Word kepada format HTML, FO dan Teks. Pakej org.apache.poi.hwpf.converter mengandungi penukar Word-to-HTML dan Word-to-FO.

Tukar DOC kepada 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();

Baca Teks Daripada Fail DOC

Apache POI HWPF menyediakan kelas WordExtractor untuk membaca teks daripada format fail DOC Microsoft Word. Anda boleh mengekstrak teks daripada fail dengan hanya beberapa baris kod.

Ekstrak teks daripada fail 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());

Tambahkan Pengepala & Pengaki Tersuai pada DOC

Apache POI HWPF membolehkan pembangun Java mencipta pengepala dan pengaki tersuai di dalam dokumen Word. Apache POI HWPF digambarkan sebagai "berfungsi sederhana". Ia menyediakan sokongan untuk pengekstrakan teks asas, pengekstrakan teks khusus, akses kepada pengepala & pengaki, dan menukar ciri teks. Kaedah getText() boleh digunakan untuk mendapatkan teks daripada semua perenggan, atau getParagraphText() boleh digunakan untuk mengambil teks daripada setiap perenggan secara bergilir-gilir. 

Urus Pengepala & Pengaki Tersuai dalam Fail DOC Word


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