Accueil > Java Lecture> Microsoft Document Word en JAVA

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

Votre email:


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


Articles populaires:

Share and Enjoy:
  • Print
  • Digg
  • del.icio.us
  • Facebook
  • Google Bookmarks
  • DZone
  • email
  • IndianPad
  • LinkedIn
  • Live
  • MySpace
  • Netvibes
  • RSS
  • Technorati
  • Yahoo! Bookmarks
  • Yahoo! Buzz
  • Reddit
  • Add to favorites
  • PDF
  • Twitter
Tags: Catégories: Java Tags:
  1. Subramanyam
    Novembre 24, 2008 à 08:15 | # 1

    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.

  2. Subramanyam
    Novembre 24, 2008 à 08:16 | # 2

    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.

  3. Nishikanta Sahoo
    Décembre 18, 2008 à 05:16 | # 3

    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]

  4. Décembre 18, 2008 à 23:33 | # 4

    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.

  5. mince
    Mars 18, 2009 à 02:00 | # 5

    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

  6. Mars 18, 2009 à 09:50 | # 6

    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

  7. mince
    Mars 24, 2009 à 03:51 | # 7

    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

  8. Laker
    Mars 24, 2009 à 04:12 | # 8

    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

  9. Amit
    Avril 9th, 2009 à 06:23 | # 9

    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

  10. Ankur Raiyani
    20 mai 2009 à 21:53 | # 10

    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

  11. Juillet 2nd, 2009 à 08:57 | # 11

    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.

  12. Sathish Raja
    Juillet 10, 2009 à 04:31 | # 12

    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)

  13. Prabhu
    Juillet 11, 2009 à 00:40 | # 13

    Raja Sathish,

    Avez-vous résolu le problème, s'il vous plaît, si les mesures fixes post

  14. Darren Slevin
    Juillet 15, 2009 à 14:02 | # 14

    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

  15. devday
    Juillet 17, 2009 à 23:20 | # 15

    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)

  16. miche
    Juillet 18, 2009 à 18:33 | # 16

    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!

  17. Sulabh
    Août 4th, 2009 à 04:14 | # 17

    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??

  18. Sulabh
    Août 4th, 2009 à 04:15 | # 18

    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

  19. Shriddha
    Août 27, 2009 à 02:29 | # 19

    Mise en erreur:
    java.lang.NoClassDefFoundError: org / apache / poi / hpsf / WritingNotSupportedException

  20. Gokul
    Septembre 10, 2009 à 02:43 | # 20

    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.

  21. Josh
    Novembre 13, 2009 à 09:05 | # 21

    @ 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.

  22. Décembre 27, 2009 à 01:11 | # 22

    Merci beaucoup.

  23. ombragé
    6 janvier 2010 à 23:04 | # 23

    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

  24. WKKasun Chamika
    21 mars 2010 à 21:51 | # 24

    Merci u 4 code d

    System.out.println (paragraphes [i]. ToString ()); / / pour imprimer les paragraphes

  25. Sushree Das
    23 mars 2010 à 04:30 | # 25

    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 ..

  26. Sushree Das
    23 mars 2010 à 04:31 | # 26

    S'il vous plaît laissez-moi savoir comment insérer l'image d'un fichier Word doc

  27. param
    1 avril 2010 à 01:52 | # 27

    S'il vous plaît laissez-moi savoir comment peut-on lire des images de. doc fichier avec un texte en utilisant java

  28. 21 avril 2010 à 15:29 | # 28

    Excellent.

    Merci beaucoup.

  29. UJJAL
    6 mai 2010 à 02:14 | # 29

    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

  30. UJJAL
    6 mai 2010 à 07:04 | # 30

    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 ..

  31. 8 mai 2010 à 02:12 | # 31

    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

  32. 12 mai 2010 à 18:22 | # 32

    Des informations très agréable.

  33. Piotr Rychlik
    14 mai 2010 à 09:35 | # 33

    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.

  34. UJJAL
    16 mai 2010 à 05:27 | # 34

    Ce code lire un paragraphe. Doc par paragraphe.
    Comment puis-je lu cette phrase par phrase de fichier?

    Merci d'avance.

  35. melaal
    22 mai 2010 à 01:51 | # 35

    Comment puis-je lire doc avec texte et images?

  36. melaal
    22 mai 2010 à 01:56 | # 36

    et comment je peux lire un texte avec style?

  37. Piotr Rychlik
    24 mai 2010 à 04:39 | # 37

    Salut,

    Comment faire pour remplacer une chaîne par une autre en. Documents doc?

  38. Piotr Rychlik
    26 mai 2010 à 13:35 | # 38

    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.

  39. bshirota
    11 juin 2010 à 15:32 | # 39

    Hitesh,

    Merci pour cela. Excellent post .. m'a sauvé d'une tonne de recherche.

  40. Gayan
    22 juin 2010 à 03:31 | # 40

    Comment identifier le titre de l'. Doc fichier ....

    s'il vous plaît ...

    m'envoyer le code ...

  41. Gayan
    22 juin 2010 à 03:33 | # 41

    Comment identifier le titre de l'. Doc fichier .... en utilisant Apache POI

    s'il vous plaît ...

    m'envoyer le code ...

  42. Brijesh
    7 juillet 2010 à 23:17 | # 42

    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 ..

  1. Pas encore de trackbacks.