Lectura Documento de Microsoft Word en JAVA
Cuando se trata de la lectura de documentos Microsoft Office Word Java no tiene en crear clases para manejar esto, pero Apache POI paquete desarrollado por la Fundación Apache le da el poder de la lectura documento de Microsoft Word en Java. Más información sobre el paquete de Apache POI se puede encontrar en Apache POI
; org.apache.poi.poifs.filesystem importación .*; ; org.apache.poi.hwpf importación .*; ; org.apache.poi.hwpf.extractor importación .*; ; import java.io. *; readDoc clase pública ( main ( String [ ] args ) public static void main (String [] args) ( "Hello.doc" ; Filesname String = "Hello.doc"; ; POIFSFileSystem fs = null; intentar ( POIFSFileSystem ( new FileInputStream ( filesname ; fs = new POIFSFileSystem (new FileInputStream (filesname; / / No se pudo cerrar las llaves al final como mi sitio no permite que se cierre HWPFDocument ( fs ) ; HWPFDocument doc = new HWPFDocument (FS); WordExtractor ( doc ) ; WordExtractor nos = WordExtractor nuevo (doc); paragraphs = we. getParagraphText ( ) ; String [] = párrafos nosotros. GetParagraphText (); . println ( "Word Document has " + paragraphs. length + " paragraphs" ) ; System.. Println ( "Word Document tiene" + apartados. Longitud + "párrafos"); int i = 0 ; i < paragraphs . length ; i ++ ) { for (int i = 0; i <párrafos. longitud; i + +) ( = paragraphs [ i ] . replaceAll ( " \\ cM? \r ? \n " , "" ) ; puntos [i] = puntos [i]. replaceAll ( "\ \ cm? \ r \ n", ""); . println ( "Length:" + paragraphs [ i ] . length ( ) ) ; System.. Println ( "Longitud:" + los párrafos [i]. Longitud ()); ) ) Exception e ) { catch (Exception e) ( ; e. printStackTrace (); ) ) )
Explicación del código:
- La creación de nuevos POIFSFileSystem Objeto y pasar el documento de Microsoft Word para que
- Creación de nuevo objeto de la clase HWPFDocument, esta clase es específicamente responsable para el manejo de Microsoft Word
- WordExtractor extraerá todas las palabras del documento de Word
- getParagraphText () que va a extraer todo el párrafo de texto inteligente
- Finalmente, tratamos de leer el contenido del párrafo

Motores de búsqueda personalizados
















Hola,
Me estoy por debajo de excepción mientras se ejecuta este ejemplo.
¿Podría usted por favor hágamelo saber si me falta alguno tarros / necesidad de hacer algo más para ejecutar esta clase de Java.
Gracias de antemano por su ayuda.
Recuerdos,
Subramanyam.
Hola,
Lo siento por el spam. adjuntando una excepción.
Me estoy por debajo de excepción mientras se ejecuta este ejemplo.
java.io.IOException: la firma de encabezado no válido; leer 7021802808062469458, que se espera -2226271756974174256
en org.apache.poi.poifs.storage.HeaderBlockReader. (HeaderBlockReader.java: 112)
en org.apache.poi.poifs.filesystem.POIFSFileSystem. (POIFSFileSystem.java: 151)
en com.general.test.ReadDoc.main (ReadDoc.java: 16)
¿Podría usted por favor hágamelo saber si me falta alguno tarros / necesidad de hacer algo más para ejecutar esta clase de Java.
Gracias de antemano por su ayuda.
Recuerdos,
Subramanyam.
Después de ejecutar este código i got a continuación la excepción. Por favor, dame una solución para este execption. Ya insertar frasco también, pero todavía tengo este execption. Una cosa que no me esta EncryptedDocumentException.class en el frasco.
Exception in thread "main" java.lang.NoClassDefFoundError: org / apache / poi / EncryptedDocumentException
en ws.WordRead.main (WordRead.java: 38)
ERROR: No se puede obtener JDWP JNI 1,2 medio ambiente, JVM-> getenv () return code = -2
Error JDWP salida AGENT_ERROR_NO_JNI_ENV (183): [../../../ src / share / Back / util.c: 820]
Hola Nishikanta,
He utiliza POI-3.0.2-Final.jar y poi-bloc de notas-3.0.2-FINAL-20080204.jar paquete de este código.
Después de ejecutar este código excption "java.io.FileNotFoundException: hello.doc (El sistema no puede encontrar el archivo especificado)" fue genereted
Entonces, ¿dónde debo dejar hello.doc (i creado en mi escritorio) thankss
Hola Slim,
Sólo tiene que colocar el hello.doc dónde. Archivo de clase reside. Si usted está poniendo el archivo doc en otro lugar de especificar la ruta de ubicación en el código fuente. Trabajará muy bien.
Gracias,
Hitesh Agrawal
hola,
gracias por la respuesta.
la labor guión muy bien.
¿Cuál es el efecto del uso de "los apartados [i] = puntos [i]. replaceAll (" \ \ cm? \ r? \ n ","");"
gracias
Hola,
Gracias por este post, es muy útil.
Estoy tratando de encontrar una palabra en mi archivo de palabras después de leer el archivo.
¿Cómo puedo hacerlo??
Muchas gracias
java.io.IOException: No se puede leer toda la cabecera, 6 bytes leídos; espera 512 bytes
en org.apache.poi.poifs.storage.HeaderBlockReader. (HeaderBlockReader.java: 78)
en org.apache.poi.poifs.filesystem.POIFSFileSystem. (POIFSFileSystem.java: 83)
en org.apache.poi.hwpf.HWPFDocument.verifyAndBuildPOIFS (HWPFDocument.java: 133)
en org.apache.poi.hwpf.HWPFDocument. (HWPFDocument.java: 146)
en transactionDB.changeFormat.main (changeFormat.java: 45)
Error al mostrar lo que tengo que me diga por favor
Hola Hitesh,
Gracias por compartir este ejemplo. Tengo un requisito diferente con un archivo de Word. Quiero añadir una imagen en Word documento mediante PDI, pero no saben cómo hacer esto.
Gracias,
Ankur Raiyani
¿Cómo puedo leer los comentarios de la palabra y marcadores es a través de Java? Do u tiene un código de muestra? Cualquier ayuda sería apreciada.
Hola amigos,
¿Puede alguien ayudarme en esto ... ... ... Tuve que usar este código y soy Geting este excepciones ... ... estoy usando poi-2.5.1-final-poi 20040804.jar.and-bloc de notas-3.5-beta5-20090219.jar archivos ... ... .. cómo especificar la ruta de ubicación en el código fuente ... .. yo había guardado el archivo en el escritorio
java.io.IOException: la firma de encabezado no válido; leer 85966670672, que se espera -2226271756974174256
en org.apache.poi.poifs.storage.HeaderBlockReader. (HeaderBlockReader.java: 88)
en org.apache.poi.poifs.filesystem.POIFSFileSystem. (POIFSFileSystem.java: 83)
en rb.action.FileRead.main (FileRead.java: 15)
Sathish Raja,
¿Ha fijado el problema, si fija por favor enviar los pasos
Hola Hitesh,
¿Dónde debo guardar el PDI-3.0.2-Final.jar y poi-bloc de notas-3.0.2-FINAL-20080204.jar archivos. Sólo estoy tratando de que el ejemplo de arriba de trabajo. Cheers for the help.
Darren
Hola amigos,
En la ejecución de este código estoy recibiendo el siguiente error.can alguien me diga cómo resolver este problema.
java.io.IOException: No se puede leer toda la cabecera; -1 bytes leídos; espera 512 bytes
en org.apache.poi.poifs.storage.HeaderBlockReader. (HeaderBlockReader.java: 78)
en org.apache.poi.poifs.filesystem.POIFSFileSystem. (POIFSFileSystem.java: 83)
hola! soy realmente perdido ... Yo soy muy nuevo en este punto de interés, pero tengo que usar esto para mi proyecto que es leer un documento de Word usando Java ... ¿Cómo puedo "importar" el paquete para org.apache.poi? He descargado el poi-3.5-beta6 y me pidió que instalar hormiga y bosque .. que me pidió que la variable de entorno ANT_HOME y FORREST_HOME .. please help me .. im confused!
Hola amigos,
Estoy tratando de cambiar el tamaño de la fuente de un texto.
Para hacer esto que estoy escribiendo una corriente HWPF a otro y por lo tanto, puede cambiar la fuente, pero exactamente lo que necesita es tener fuentes diferentes (y / o el tamaño) para cada palabra o párrafo. Básicamente, a tener más de un tamaño de fuente en una sola pieza de archivo de Word.
¿Puede alguien por favor decirme cómo hacer para hacer esto??
exactamente lo que necesitamos es ...
gedgfe DGD
gbntghth brbr RBR
bnfgh rtfhtyh rghh
que es cada palabra con diferentes propiedades de la fuente
Obtengo el error:
java.lang.NoClassDefFoundError: org / apache / poi / HPSF / WritingNotSupportedException
hola,
He ejecutado el programa Java ur leer el documento de Word. funciona bien, pero si la palabra de un documento de HAVA Tablas. su código de producir una secuencia de comandos malintencionadas y se ejecuta el código del bucle Infinte.
por favor dígame ¿Existe algún método para leer los datos de una tablas en documento de Word.
@ Ankur Raiyani
¿Tenía usted alguna suerte de conseguir Apache POI para insertar imágenes en un documento de Word. Estoy tratando de hacer lo mismo.
Muchas gracias.
porfa necesito ayuda rápida: Utilizo 2 ficheros. archivo de cabecera y el archivo sin cabecera cuando entro en el archivo de cabecera que sin darme esta java.io.IOException error: firma encabezado no válido, debe decir 0 × 665C316674725C7B, que se espera 0xE11AB1A1E011CFD0
en org.apache.poi.poifs.storage.HeaderBlockReader. (HeaderBlockReader.java: 107)
en org.apache.poi.poifs.filesystem.POIFSFileSystem. (POIFSFileSystem.java: 151)
en wordtotext.Main.main (Main.java: 30)
y el segundo archivo de ejecución helpme plz buena