2012-10-28 24 views
0

可能重複:
Convert Word doc to HTML programmatically in Java一個轉換的.docx爲HTML和我收到不可讀的文本

我有一個正在.docx文件開放作爲一個.html程序文件,但轉換爲HTML時,我得到的是不可讀的字符串。我需要這個文件的html,因爲我需要稍後解析它。當我使用下面的方法來打開文件我得到不可讀的文本,如:UL在#tBd ^ýE「0©®??üAäúsIpAOA d \ DA>½!??????? ?EACR & AEL \Fâÿ2qJ?ú??石川島&西布羅姆

FileInputStream fileInput = null; 
    BufferedInputStream myBuffer = null; 
    DataInputStream dataInput = null; 
    fileInput = new FileInputStream(selectedFile); 
    myBuffer = new BufferedInputStream(fileInput); 
    dataInput = new DataInputStream(myBuffer); 
    StringBuilder nHtmlText = new StringBuilder(); 
    while (dataInput.available() != 0) { 
     System.out.println(dataInput.readLine()); 
     nHtmlText.append(dataInput.readLine()); 
    } 
    htmlText = nHtmlText.toString(); 

有什麼方法來獲得用於分析一個乾淨可讀的HTML文件並保存了這件事?

+0

你不能像這樣讀取'.docx'文件。 – kaysush

+0

您在哪裏/如何將*轉換爲HTML?我在這裏看到的是試圖讀取文件的二進制內容。 – jensgram

+0

DOCX,文件與ZIP算法 –

回答

1

您正在閱讀一個的docx文件的原始內容,這不是HTML,但壓縮的XML - 看here,你將需要一些東西到DOCX轉換爲HTML。這兩者非常不同。

+0

所以我必須將docx轉換爲xml,我查找了一些例子,但找不到太多。 – yams

0

如果你想轉換一個.docx文件到.html那麼你就不能直接讀取該文件,因爲它是一個二進制文件。你可以使用JODConverter這一點。我沒有用過這個個人,但這個問題的this question近似重複。

+0

看起來它確實做了一些有限制的html轉換,我會檢查一下。 – yams