2016-09-22 139 views
0

我試圖將文件轉換成的.docx沉綿在Microsoft Word生成的文件看起來相同的生成文件的MD5值不同,每次我運行相同程序。 有沒有辦法確保使用aspose文件的完整性?產生的.docx使用<a href="http://www.aspose.com/" rel="nofollow">aspose</a></p> <p>然而aspos

這裏是代碼的片段:

   System.out.println(DigestUtils.md5Hex(bytes)); 
       ByteArrayInputStream bis = new ByteArrayInputStream(bytes); 

       Document doc = new Document(bis); 
       doc.save("newFile.docx"); 
       bis.close(); 

       bytes= FileUtils.readFileToByteArray(new File("newFile.docx"); 
       System.out.println(DigestUtils.md5Hex(bytes)); //<-- generates a MD5 that is different each time I run the program...why?? 

我的問題是,有沒有一種方法,以確保我們的每一次運行

+0

MD5散列每個文件都是唯一的。你不能只有重複,這就是MD5散列的整個點。我相信這與Aspose和java – Stavm

+0

@ polisha989無關,每次我爲相同的輸入運行相同的腳本。生成的MD5(在第二次打印時)是不同的。基本上,MD5必須相同,每次 – nafas

回答

0

使用Aspose.Words模仿相同的行爲MS後得到相同的MD5哈希Word的確如此。如果使用MS Word多次重新保存輸入文檔,則每個輸出文檔的MD5十六進制值將有所不同。

我使用Aspose作爲開發人員的傳道者。

+0

是的,我們最終把事情保存爲PDF。解決了問題並設法取得了正確的結果。 – nafas

相關問題