[英]Export Microsoft word xml file into docx
我試圖不使用任何第三方庫來創建Microsoft Word文檔。 我想做的是:
到目前為止,我已經能夠做到。 我想將其導出為* .docx格式。 但是,當我嘗試打開它時,它會引發異常。
錯誤消息:文件已損壞,無法打開
但是,當我將其另存為* .doc時,便可以打開word文檔。
任何想法,有什么問題。 我需要使用任何庫將其導出到docx文件嗎?
謝謝
Docx與doc不向后兼容。 Docx是一種壓縮格式: Docx標簽信息 。
我建議您為docx格式創建另一個模板,因為格式是如此不同。
另外,您可能需要檢查代碼是否編寫正確的編碼。 在將其轉換為正確的編碼之前,我得到的奇數字母在將其轉換為.docx格式時不兼容。 為此,我在輸入流中實現了它:
InputStreamReader isr= new InputStreamReader(template.getInputStream(entry), "UTF-8");
BufferedReader fileContents = new BufferedReader(isr);
我在輸入時使用了枚舉,但是“ UTF-8”將其設置為正確的格式並消除了奇數字符。 我還在某些xml的末尾鍵入了“ null”,因此我通過將其取出來消除了這種情況(我將每個文件的內容都放入一個字符串中,以便無論如何都可以對其進行操作):
String ending = "null";
while(sb.indexOf(ending) != -1){
sb.delete(sb.indexOf(ending), (sb.indexOf(ending) + ending.length()));
}
sb是我放入的stringbuilder。 使用UTF-8可能已經解決了這個問題,但是我在實現編碼之前已將其修復,因此我考慮將其包括在內,以防最終成為問題。 我希望這有幫助。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.