Lecture de documents Microsoft Word en JAVA
Quand il s'agit de lire un document Microsoft Office Word Java n'a pas de construire des classes pour gérer cela, mais le paquet Apache POI développé par la fondation Apache vous donne le pouvoir de lire un document Microsoft Word en Java. Plus d'informations sur le paquet Apache POI peut être trouvé à Apache POI
; org.apache.poi.poifs.filesystem importation .*; ; org.apache.poi.hwpf importation .*; ; org.apache.poi.hwpf.extractor importation .*; ; import java.io. *; public class dédiée ReadDoc ( main ( String [ ] args ) public static void main (String [] args) ( "Hello.doc" ; filesname String = "Hello.doc"; ; fs POIFSFileSystem = null; essayer ( POIFSFileSystem ( new FileInputStream ( filesname ; fs = new POIFSFileSystem (nouveau FileInputStream (filesname; / / Impossible de fermer les accolades à la fin que mon site ne lui permettait pas de fermer HWPFDocument ( fs ) ; doc = HWPFDocument HWPFDocument nouvelles (fs); WordExtractor ( doc ) ; WordExtractor nous de nouveaux WordExtractor = (doc); paragraphs = we. getParagraphText ( ) ; String [] = points que nous. GetParagraphText (); . println ( "Word Document has " + paragraphs. length + " paragraphs" ) ; Système. OUT. Out.println ("Document Word a« paragraphes +. Longueur + "points"); int i = 0 ; i < paragraphs . length ; i ++ ) { for (int i = 0; paragraphes <i. longueur; i + +) ( = paragraphs [ i ] . replaceAll ( " \\ cM? \r ? \n " , "" ) ; paragraphes [i] = points [i]. replaceAll ("\ \ cM? \ r? \ n", ""); . println ( "Length:" + paragraphs [ i ] . length ( ) ) ; Système. OUT. Println ("Longueur:" + points [i]. Longueur ()); ) ) Exception e ) { catch (Exception e) ( ; e. printStackTrace (); ) ) )
Explication Code:
- Créer de nouveaux objets et POIFSFileSystem transmettant le document de Microsoft Word pour le
- Créer nouvel objet de classe HWPFDocument, cette classe est spécifiquement responsable de la gestion des documents Microsoft Word
- WordExtractor va extraire tous les mots du document Word
- getParagraphText () va extraire tous le texte paragraphe sage
- Enfin, nous essayons de lire le contenu du paragraphe

Recherche personnalisée


































Salut,
Je reçois exception ci-dessous lors de l'exécution de cet exemple.
Pourriez-vous s'il vous plaît laissez-moi savoir si je suis absent les bocaux / besoin de rien faire d'autre pour exécuter cette classe java.
Merci d'avance pour votre aide.
Cordialement,
Subramanyam.
Salut,
désolé pour le spam. fixation exception.
Je reçois exception ci-dessous lors de l'exécution de cet exemple.
java.io.IOException: signature d'en-tête Blancs; lire 7021802808062469458, devrait -2226271756974174256
à org.apache.poi.poifs.storage.HeaderBlockReader. (HeaderBlockReader.java: 112)
à org.apache.poi.poifs.filesystem.POIFSFileSystem. (POIFSFileSystem.java: 151)
à com.general.test.ReadDoc.main (ReadDoc.java: 16)
Pourriez-vous s'il vous plaît laissez-moi savoir si je suis absent les bocaux / besoin de rien faire d'autre pour exécuter cette classe java.
Merci d'avance pour votre aide.
Cordialement,
Subramanyam.
Après exécution de ce code que j'ai obtenu ci-dessous exception. S'il vous plaît me donner une solution à ce execption. J'ai déjà insérer pot aussi, mais j'ai eu ce execption. Une chose que je n'ai pas eu cette EncryptedDocumentException.class dans le bocal.
Exception in thread "main" java.lang.NoClassDefFoundError: org / apache / poi / EncryptedDocumentException
à ws.WordRead.main (WordRead.java: 38)
Erreur: Impossible d'obtenir JDWP JNI 1.2 Environnement, jvm-> getenv () code de retour = -2
JDWP erreur de sortie AGENT_ERROR_NO_JNI_ENV (183): [../../../ src / share / back / util.c: 820]
Nishikanta Salut,
J'ai utilise paquet POI-3.0.2-Final.jar et poi-bloc-notes-3.0.2-FINAL-20080204.jar pour ce code.
après l'exécution de ce code excption "java.io.FileNotFoundException: hello.doc (Le système ne peut pas trouver le fichier spécifié)" a été genereted
alors où dois-je doit mettre hello.doc (je l'ai créé sur mon bureau) thankss
Salut Slim,
Il suffit de placer le hello.doc où. Fichier de classe réside. Si vous mettez le fichier doc à un autre endroit de spécifier le chemin d'emplacement dans le code source. Cela fonctionnera très bien.
Merci,
Hitesh Agrawal
Salut,
Merci pour la réponse.
le travail de script très bien.
Quel est l'effet de l'utilisation de "points [i] = points [i]. replaceAll (" \ \ cM? \ r? ","");" \ n
Merci
Salut,
Merci pour ce poste, il est très utile.
J'essaie de trouver un mot sur mon fichier Word, après la lecture du fichier.
Comment puis-je faire??
Merci beaucoup
java.io.IOException: Impossible de lire en-tête complet, 6 octets lus; attendus 512 octets
à org.apache.poi.poifs.storage.HeaderBlockReader. (HeaderBlockReader.java: 78)
à org.apache.poi.poifs.filesystem.POIFSFileSystem. (POIFSFileSystem.java: 83)
à org.apache.poi.hwpf.HWPFDocument.verifyAndBuildPOIFS (HWPFDocument.java: 133)
à org.apache.poi.hwpf.HWPFDocument. (HWPFDocument.java: 146)
à transactionDB.changeFormat.main (changeFormat.java: 45)
Erreur d'affichage ce que j'ai à me faire dire s'il vous plaît
Bonjour hitesh,
Merci pour ce partage par exemple. J'ai une exigence différente avec un fichier texte. Je veux ajouter une image en document Word à l'aide de POI, mais ne savez pas comment faire cela.
Merci,
Ankur Raiyani
Comment puis-je lire les commentaires de texte et les signets en utilisant Java? Ne u un exemple de code? Toute aide serait appréciée.
Salut les amis,
Quelqu'un peut-il m'aider dans cette ... ... ... J'avais utiliser ce code et im geting ce exceptions ... ... J'utilise poi-2.5.1-final-20040804.jar.and fichiers POI-bloc-notes-3.5-beta5-20090219.jar ... ... .. comment spécifier l'emplacement dans le code source ... .. j'avais gardé le fichier sur le bureau
java.io.IOException: signature d'en-tête Blancs; lire 85966670672, devrait -2226271756974174256
à org.apache.poi.poifs.storage.HeaderBlockReader. (HeaderBlockReader.java: 88)
à org.apache.poi.poifs.filesystem.POIFSFileSystem. (POIFSFileSystem.java: 83)
à rb.action.FileRead.main (FileRead.java: 15)
Raja Sathish,
Avez-vous résolu le problème, s'il vous plaît, si les mesures fixes post
Hitesh Salut,
où dois-je stocker les fichiers de POI-3.0.2-Final.jar et poi-bloc-notes-3.0.2-FINAL-20080204.jar. J'essaie simplement d'obtenir l'exemple ci-dessus de travail. Vive l'aide.
Darren
Salut les amis,
Sur l'exécution de ce code reçois le texte suivant error.can quelqu'un me dire comment résoudre ce problème.
java.io.IOException: Impossible de lire en-tête complet, -1 octets lus; attendus 512 octets
à org.apache.poi.poifs.storage.HeaderBlockReader. (HeaderBlockReader.java: 78)
à org.apache.poi.poifs.filesystem.POIFSFileSystem. (POIFSFileSystem.java: 83)
Bonjour! im vraiment perdu ... Je suis très nouveau pour ce POI mais je dois utiliser pour mon projet qui consiste à lire un document Word en utilisant java ... Comment puis-je «importer» le paquet pour org.apache.poi? J'ai téléchargé le poi-3.5-bêta6 et il m'a demandé d'installer fourmi et Forrest .. il m'a demandé de définir la variable d'environnement ANT_HOME et FORREST_HOME .. s'il vous plaît aidez moi .. im confus!
Salut les amis,
J'essaie de changer la taille de la police d'un texte.
Pour ce faire, je vous écris un flux HWPF à l'autre et peuvent donc changer la police, mais ce que je exactement besoin, c'est d'avoir police différente (et / ou la taille) pour chaque mot / paragraphe. Essentiellement pour avoir une taille plus d'une police dans une seule pièce de fichier Word.
Quelqu'un peut-il s'il vous plaît me dire comment s'y prendre??
exactement ce que je besoin de ...
gedgfe DGD
brbr RBR gbntghth
rghh bnfgh rtfhtyh
qui est chaque mot ayant différentes propriétés de police
Mise en erreur:
java.lang.NoClassDefFoundError: org / apache / poi / hpsf / WritingNotSupportedException
Salut,
J'ai exécuté le programme java ur de lire document word. il fonctionne très bien, mais si le document Word Hava des tables. votre code de produire un script malveillant et le code s'exécute en boucle infinte.
S'il vous plaît dites-moi est-il des méthodes pour lire un ensemble de données à partir d'un des tableaux dans Word Document.
@ Ankur Raiyani
Avez-vous eu de la chance se Apache POI pour insérer des images dans un document Word. J'essaie de faire la même chose.
Merci beaucoup.
plzzzz rapidement J'ai besoin d'aide: J'utilise 2 fichiers. fichier avec en-tête et le fichier sans en-tête quand j'entre dans le fichier sans en-tête de me donner ce java.io.IOException erreur: la signature en-tête de Blancs; lire 0x665C316674725C7B, devrait 0xE11AB1A1E011CFD0
à org.apache.poi.poifs.storage.HeaderBlockReader. (HeaderBlockReader.java: 107)
à org.apache.poi.poifs.filesystem.POIFSFileSystem. (POIFSFileSystem.java: 151)
à wordtotext.Main.main (Main.java: 30)
et le second fichier exécuter helpme plz bonne
Merci u 4 code d
System.out.println (paragraphes [i]. ToString ()); / / pour imprimer les paragraphes
S'il vous plaît quelqu'un peut me fournir le code java à travers laquelle l'image i peut insérer dans un fichier MS Word à n'importe quel endroit, et considèrent qu'il a une certaine caontent sur la réponse it.plz moi ..
S'il vous plaît laissez-moi savoir comment insérer l'image d'un fichier Word doc
S'il vous plaît laissez-moi savoir comment peut-on lire des images de. doc fichier avec un texte en utilisant java
Excellent.
Merci beaucoup.
Je suis begineer o java.When compiler cet exemple, j'ai obtenu 9 des erreurs.
Aidez-moi s'il vous plaît ...
org.apache.poi.poifs.filesystem paquet n'existe pas
org.apache.poi.poifs.filesystem importation .*;
org.apache.poi.hwpf paquet n'existe pas
org.apache.poi.hwpf importation .*;
org.apache.poi.hwpf.extractor paquet n'existe pas
org.apache.poi.hwpf.extractor importation .*;
Vous ne trouvez pas le symbole
Symbole: la classe POIFSFileSystem
Lieu: classe dédiée ReadDoc
fs POIFSFileSystem = null;
Vous ne trouvez pas le symbole
Symbole: la classe POIFSFileSystem
Lieu: classe dédiée ReadDoc
fs = new POIFSFileSystem (nouveau FileInputStream (filesname));
Vous ne trouvez pas le symbole
Symbole: la classe HWPFDocument
Lieu: classe dédiée ReadDoc
doc = HWPFDocument HWPFDocument nouvelles (fs);
Vous ne trouvez pas le symbole
Symbole: la classe HWPFDocument
Lieu: classe dédiée ReadDoc
doc = HWPFDocument HWPFDocument nouvelles (fs);
Vous ne trouvez pas le symbole
Symbole: la classe WordExtractor
Lieu: classe dédiée ReadDoc
WordExtractor nous WordExtractor = new (doc);
Vous ne trouvez pas le symbole
Symbole: la classe WordExtractor
Lieu: classe dédiée ReadDoc
WordExtractor nous WordExtractor = new (doc);
9 erreurs
S'il vous plaît quelqu'un m'aider ...
Permettez-moi de connaître le travail de base de la mine de lire un document ..
UJJAL Salut,
Vous devrez ajouter Apache POI bibliothèques dans votre chemin de classe pour le faire fonctionner. Vous pouvez télécharger le POI paquets Apache à partir de http://poi.apache.org/ et que vous essayez de lire des documents Microsoft Word en java que vous aurez également besoin de cette bibliothèque ainsi. http://poi.apache.org/ hwpf / index.html
Merci,
Hitesh Agarwal
Des informations très agréable.
Est-il possible de modifier. Doc et / ou. Documents docx avec POI? Je voudrais être en mesure de remplacer certains fragments de texte dans les documents Word et puis enregistrez plusieurs documents mis à jour sur le disque.
Ce code lire un paragraphe. Doc par paragraphe.
Comment puis-je lu cette phrase par phrase de fichier?
Merci d'avance.
Comment puis-je lire doc avec texte et images?
et comment je peux lire un texte avec style?
Salut,
Comment faire pour remplacer une chaîne par une autre en. Documents doc?
Je pense qu'il ya beaucoup de bugs sérieux dans la mise en œuvre du format HWPF, par exemple, le texte suivant:
doc = new HWPFDocument HWPFDocument (InputStream);
doc.write (OutputStream);
transforme les fichiers. doc en somethig qui ne peut pas être ouvert avec Word plus.
Hitesh,
Merci pour cela. Excellent post .. m'a sauvé d'une tonne de recherche.
Comment identifier le titre de l'. Doc fichier ....
s'il vous plaît ...
m'envoyer le code ...
Comment identifier le titre de l'. Doc fichier .... en utilisant Apache POI
s'il vous plaît ...
m'envoyer le code ...
Salut
Pouvez-vous s'il vous plaît me dire comment lire un fichier doc qui ont des images avec lui.
Poster un peu de code si possible ..