3

フィールドが定義された.docxテンプレートがあります。Webサービスでユーザーが入力したデータを取得し、Javaを使用してそれらのフィールドに挿入する必要があります。

私のチームと私はこれを一日中研究してきましたが、これに対する簡単な解決策を見つけることができませんでした。

これを比較的簡単に行う方法はありますか?

ありがとう。

編集:

  • Alt + F9を押すと、すべてのフィールドが次のように表示されます。{ FORMTEXT }

  • POIはこれを行うのに十分なサポートを持っていないようです。

  • すべての依存関係を満たせなかったため、WindowsXPでOpenOfficeSDKを正常にセットアップできませんでした。

  • docx4jは機能する可能性がありますが、その中のMailMergerは現在、指定されたデータでフィールドに入力していません。

  • docxを抽出してword/document.xmlファイルを開くと、1つのフィールドの周りのXMLは次のようになります。http://pastebin.com/uXBtz7X5 (FieldNameとFieldValueを検索して、これらが定義されている場所を確認してください)

4

4 に答える 4

4

docxドキュメントのフィールドを更新するために使用できるDocx4jもご覧ください。例もあります。

fieldupdaterの例

于 2014-01-03T15:22:32.757 に答える
3

開示:私の会社はdocx4jを後援しています

MailMergerを見てください; 下部のメインメソッドを参照してください。

他のタイプのフィールドについては、より一般的なフィールドサポートを試すことができます。

于 2012-07-26T23:19:28.657 に答える
0

docx形式はzipファイルであり、XMLやその他のファイルが含まれています。標準のXMLツールを使用してXMLファイルを編集できる場合があります。

于 2012-07-27T19:34:41.557 に答える
0

DocmosisとJODReportsはあなたを助けるかもしれません-それらはいくつかのフォーマットでドキュメントを作成したりテンプレートを作成したりするためのJavaライブラリです。DocmosisはDocXで動作し、同じテクノロジに基づいているため、JODReportsでも動作する可能性があります。特定の{FORMTEXT}フィールドが機能するかどうかはわかりませんが、Alt-F9を押すと、Docmosisはプレーンテキストファイルまたは{MERGEFIELD}のようなWordのマージフィールドで機能します。

于 2012-08-08T01:07:01.597 に答える