Bonjour,
Je souhaite manipuler des document word en java (création et consultation).
j'ai fait des recherches sur le net mais en vin.
Pouvez-vous s'il y' a une piste pour ça?.
Merci d'avance.
Bonjour,
Je souhaite manipuler des document word en java (création et consultation).
j'ai fait des recherches sur le net mais en vin.
Pouvez-vous s'il y' a une piste pour ça?.
Merci d'avance.
As tu regardé ici :
http://poi.apache.org/
J'ai utilisé POI pour des PDF seulement.
je vais me plonger dedans.
Merci bcp pour votre indication.
Quelques choses comme ceci à priori ;
A priori petit POI est moins avancé sur Word qu'il l'ai actuellement sur Excel. Donc à voir si cela répond correctement à tes besoins.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 HWPFDocument doc = new HWPFDocument(new FileInputStream("C:\\temp\\sample1.doc")); Range range = doc.getRange(); CharacterRun run = range.insertAfter("Hello World!!! HAHAHAHAHA I DID IT!!!"); run.setBold(true); run.setItalic(true); run.setCapitalized(true); OutputStream out = new FileOutputStream("C:\\temp\\sample1.doc"); doc.write(out); out.flush(); out.close();
Merci pour votre réponse.
J'ai essayé ton code mais ça donne une exception au niveau de l'instruction suivante :
Voici l'exception :
Code : Sélectionner tout - Visualiser dans une fenêtre à part HWPFDocument doc = new HWPFDocument(new FileInputStream("E:\\Cabinet\\testForPDF\\exemple.doc"));
Sachant que le répertoire E:\Cabinet\testForPDF\ existe.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 Exception in thread "main" java.io.FileNotFoundException: E:\Cabinet\testForPDF\exemple.doc (Le fichier spécifié est introuvable) at java.io.FileInputStream.open(Native Method) at java.io.FileInputStream.<init>(FileInputStream.java:106) at java.io.FileInputStream.<init>(FileInputStream.java:66) at rachid.cabinetMedical.transverse.beans.GenererWord.main(GenererWord.java:24) Java Result: 1
après j'ai crée le fichier exemple.doc mais ça pas marché.
Normalement on doit avoir seulement le répertoire, si le fichier n'existe pas il doit le créer non?.
Merci pour votre aide.
Selon la documentation FileInputStream : non.Normalement on doit avoir seulement le répertoire, si le fichier n'existe pas il doit le créer non?.
De toute façon la c'est FileInputStream qui est pas content car il as besoin que le fichier existe déjà.
Tu as du avoir une autre erreur après la création de ton fichier sinon tu doit avior une erreur dans ton chemin. Le chemine est case sensitive.
Bon déjà ça c'est un mauvais problème que le fichier doit exister déjà.
Sinon j'ai essayé ce code :
J'ai l'exception suivante :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 //File file1 = new File("C:\\Cabinet\\toto.doc"); File file1 = new File("C:\\Cabinet\\toto.doc"); FileInputStream fis1 = new FileInputStream(file1); //FileInputStream fis = new FileInputStream("C:\\Cabinet\\toto.doc"); HWPFDocument doc = new HWPFDocument(new FileInputStream("C:\\Cabinet\\toto.doc")); Range range = doc.getRange(); CharacterRun run = range.insertAfter("Hello World!!! HAHAHAHAHA I DID IT!!!"); run.setBold(true); run.setItalic(true); run.setCapitalized(true); OutputStream out = new FileOutputStream("C:\\Cabinet\\toto.doc"); doc.write(out); out.flush(); out.close();
au niveau de l'instruction
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 9 at org.apache.poi.util.LittleEndian.getShort(LittleEndian.java:46) at org.apache.poi.hwpf.sprm.SprmOperation.<init>(SprmOperation.java:56) at org.apache.poi.hwpf.sprm.SprmIterator.next(SprmIterator.java:47) at org.apache.poi.hwpf.sprm.SprmBuffer.findSprm(SprmBuffer.java:57) at org.apache.poi.hwpf.sprm.SprmBuffer.updateSprm(SprmBuffer.java:66) at org.apache.poi.hwpf.usermodel.CharacterRun.setBold(CharacterRun.java:137) at rachid.cabinetMedical.transverse.beans.GenererWord.main(GenererWord.java:34) Java Result: 1C'est bien l'erreur que tu voulais me dire?.
Code : Sélectionner tout - Visualiser dans une fenêtre à part run.setBold(true);
POI est très basique avec les document word. Le problème principal viens surtout de l'aspect fermé de ce format. Le plus simple pour générer des documents de a à z, c'est de les générer dans un format comme ODT. Les versions récentes de msoffice savent le lire sans soucis.
Il existe là pas mal de libraires pour créer ces document (jopendocument, jodreport, ...)
Merci tchize pour al réponse.
Mais désolé, j'ai pas bien compris, tu veux dire que génère un document dont l'extension est .odt? ou quelque chose comme ça?.
Peux-tu STP m'expliquer un peu et si t'as un petit exemple je serai vraiment reconnaissant.
Merci d'avance.
oui, quelque chose comme ça.
http://fr.wikipedia.org/wiki/OpenDoc...la_bureautique
Des exemple, y en a plein dans les docs des outils que je t'ai mentionné.
Partager