2013-05-21 158 views
0

我有一個遺留軟件,它會生成一個xml,然後在docx4j的幫助下生成一個docx文檔。我還必須使用java從xml文件創建一個microsoft doc文檔。 我該怎麼做。我非常感謝任何幫助。 謝謝將docx轉換爲帶有java的doc

回答

1

調查poi。這幾乎是使用Java修改Microsoft文檔的事實標準。

1

docx4j將POI作爲依賴項,並且POI對傳統二進制doc格式(hwpf)有合理的支持。所以你可以使用它來轉換爲文檔,而不會引入額外的依賴關係。基本上,遍歷你的內容,並以doc格式發送每個段落/表格/圖像。這將是convert/in/Doc.java的反面。

然而,魔鬼是在細節,如果你的文件包含各種功能,這將是很多工作。這個斷言表示您是否將docx4j轉換爲二進制文檔(hwpf),或將POI自己的xwpf轉換爲hwpf,因爲它們之間的POI doesn't have a common interface

因此,爲了將docx轉換爲舊版二進制文件,我將使用JODConverter來驅動LibreOffice(或OpenOffice,它們的docx功能有點不同)。

JODConverter方法絕對是阻力最小的路徑,通常會給出好的結果。它的缺點是,如果你發現一些不被支持的東西,你將不得不等待LO/OO的人來修復它,如果你決定構建二進制文檔輸出爲docx4j使用POI。如果你確實建立了這個,我們很樂意接受它作爲貢獻:-)