1. Productos
  2.   Procesamiento de textos
  3.   Java
  4.   Apache POI HWPF

Apache POI HWPF

 
 

Procesar documentos binarios de Microsoft Word

Cree, lea, manipule y convierta archivos DOC a través de la biblioteca Java de código abierto.

Apache POI HWPF es un puerto de Apache POI para el formato de archivo DOC de Microsoft Word. Proporciona funcionalidad para leer y escribir archivos DOC sin necesidad de bibliotecas adicionales. También proporciona soporte limitado de solo lectura para los formatos de archivo anteriores de Word 6 y Word 95. En esta etapa, HWPF se ocupa principalmente del texto formateado. Proporciona extracción de texto básica, extracción de texto específico, acceso a encabezados y pies de página y funciones de cambio de texto.

Facilita a los desarrolladores la creación de documentos de MS-Word con la capacidad de manipular párrafos, agregar diferentes estilos al texto, agregar una tabla, extraer texto y mucho más.

Previous Next

Primeros pasos con Apache POI HWPF

En primer lugar, debe tener instalado el kit de desarrollo de Java (JDK) en su sistema. Si ya lo tiene, vaya a la página de descarga de Apache POI para obtener la última versión estable en un archivo. Extraiga el contenido del archivo ZIP en cualquier directorio desde donde se puedan vincular las bibliotecas requeridas a su programa Java. ¡Eso es todo!

Hacer referencia a Apache POI en su proyecto Java basado en Maven es aún más simple. Todo lo que necesita es agregar la siguiente dependencia en su pom.xml y dejar que su IDE obtenga y haga referencia a los archivos Jar de POI de Apache.

Dependencia de 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>
  

Cree y modifique documentos de Word utilizando las API de Java

Apache POI HWPF permite a los programadores crear nuevos documentos de Word en formatos de archivo DOC. La API también permite a los desarrolladores modificar documentos de Word existentes según sus propias necesidades. La API también admite agregar un párrafo en un documento de Word, aplicar alineaciones de texto y estilos de fuente, y mucho más.

Modificar archivo 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();

Convierta documentos de Word a otros formatos usando Java

pache POI HWPF permite a los desarrolladores de software convertir documentos de Microsoft Word a cualquier formato de archivo compatible con facilidad. Por el momento, los desarrolladores de Java pueden convertir documentos de Word a formato HTML, FO y Texto. El paquete org.apache.poi.hwpf.converter contiene convertidores de Word a HTML y de Word a FO.

Convertir DOC a 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();

Leer texto del archivo DOC

Apache POI HWPF proporciona la clase WordExtractor para leer texto del formato de archivo DOC de Microsoft Word. Puede extraer texto del archivo con solo unas pocas líneas de código.

Extraer texto de un archivo 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());

Agregar encabezado y pie de página personalizados a DOC

Apache POI HWPF permite a los desarrolladores de Java crear encabezados y pies de página personalizados dentro de documentos de Word. Apache POI HWPF se describe como "moderadamente funcional". Brinda soporte para extracción de texto básico, extracción de texto específico, acceso a encabezados y pies de página y cambio de funciones de texto. El método getText() se puede usar para obtener el texto de todos los párrafos, o se puede usar getParagraphText() para obtener el texto de cada párrafo a su vez. 

Administrar encabezado y pie de página personalizados en el archivo DOC de 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);
 Español