Génération de MS Word rapports et l'exportation uing java
J'ai besoin d'exporter des tables et de générer des rapports à partir de mon application en utilisant java pur. À l'aide de COM ou quoi que ce soit que les besoins des applications pré-installées n'est pas autorisé. J'ai vraiment besoin .doc
format. docx
format est facultatif.
À exportation table, c'est tout simplement de créer simple tableau dans un document word avec les données. Pour générer rapport est de remplacer les espaces réservés à certaines valeurs dans un tableau. Il implique également l'insertion de nouveaux sous-tables dans un modèle de tableau ou de fusionner des cellules et des lignes.
Donc, la tâche est:
J'ai essayé de chercher sur le net mais j'ai réussi à trouver Apache POI et Aspose bibliothèques pour faire le travail. Aspose semble être ok, mais malheureusement je ne peux pas le permettre. PI a très mauvaise documentation et je ne peux pas vraiment savoir si elle convient ou pas.
Par ailleurs, j'ai essayé d'insérer un simple tableau dans le document. Mais il vient de corrups document. Découvrez le code ci-dessous:
POIFSFileSystem fs = new POIFSFileSystem(new FileInputStream("poi.doc"));
HWPFDocument doc = new HWPFDocument(fs);
Range range = doc.getRange();
Table table = range.insertTableBefore((short)5, 5);
table.getRow(0).getCell(0).replaceText("cell", true);
doc.write(new FileOutputStream("poi_out.doc"));
J'ai donc trois questions en ce moment:
Merci pour vos réponses
P. S. j'ai lu quelques posts sur ce site à propos de ce sujet. Aucun d'eux ne m'a vraiment aidé. En outre, tous d'entre eux sont vieux. Quelques nouvelles fonctionnalités, probablement changé depuis ce temps.
Vous devez vous connecter pour publier un commentaire.
Il y a 2 façons de procéder:
Créer un fichier HTML avec les choses dont vous avez besoin. Utiliser la vitesse de votre moteur de template. Maintenant, après que vous remplacez les espaces réservés à valeurs dans votre code, enregistrez le fichier avec une extension '.doc "ou".docx'. La résultante de fichier va s'ouvrir dans word bien. Il sera ouvert dans la mise en page web et l'utilisateur peut passer à la mise en page d'impression s'il l'aime.
http://velocity.apache.org/engine/releases/velocity-1.5/user-guide.html
http://www.docx4java.org/trac/docx4j
Mais pour cela, vous aurez à comprendre comment les MS Office Word docs XML de la structure des œuvres. Et il peut être très compliqué de mettre un tableau dans un autre tableau.
Vous voudrez peut-être regarder à JODReports qui est gratuit, ne peut doc/docx. C'est probablement plus rapide que de PVE, mais ne nécessitent OpenOffice/LibreOffice pour être installé quelque part. Docmosis est un autre outil qui peut le faire et vous pouvez l'utiliser sans installer quoi que ce soit si vous êtes en mesure d'appeler le service de cloud (ce qui est assez cher mais pas gratuit). Je ne sais pas quel est ton problème avec le POI exemple de code, mais le POI peut produire des documents doc (je ne suis pas sûr docx) et il est gratuit.
Vous pouvez également jeter un oeil à: