2009-07-03 45 views

回答

2

據我所知Word存儲在另外一些信息,文字和格式的DOC文件,例如用戶信息,在文檔歷史上的一些東西,等等。當使用「文件>保存」這一信息的積累。我想保存爲XML並重新保存爲DOC信息。

如果我記得正確,那麼簡單的「另存爲」就可以減小文件大小,我想過去有一些菜單項允許您保存DOC文件的版本,該版本的文件比「文件>保存「版本。

1

如果你看一下在十六進制編輯器一個字文檔(.doc),你會看到有多餘的零的很多很多塊。偉大的格式,醫生!

無論如何,保存到XML然後回到文檔可能會擺脫那些成千上萬的零字節。

如果你真的很好奇,只是一個十六進制編輯器中打開這兩個文件並運行一個差分算法,你可以嘗試六角車間和十六進制編輯器新。

0

我與幾個大的Word 2003個文檔的實驗表明,保存爲XML,然後保存,作爲.DOC,確實導致輕微,雖然不顯著,更小的文件。正如你指出的那樣,rsidR屬性是不同的,但是這並沒有考慮到尺寸的減小,因爲新的rsidR通常是相同的大小。

正如Danra指出的,.doc文件具有相同字節的運行。但是保存爲.doc的較小文件也有這樣的運行,所以我相信這是一個.doc二進制格式的文件,而不是攜帶信息的數據。我仔細考慮了一些雙向的.doc文件,並且根本看不出任何外觀上的差異,支持差異不是攜帶信息的想法。

檢查圓跳閘之後創建的XML文件顯示主要的區別是多個RPR(運行性能),沒有內容轉換成XML之後被去除。由於XML刪除了未使用的字符樣式和屬性,因此似乎可以保存。

3

以下只是一個猜測。

.doc文件實際上是OLE structured storagecompound file。後者是一種以一種明確定義的方式在單個文檔中打包多個流的方法,並且該結構實際​​上非常接近文件系統中的文件系統 - 例如它具有「扇區」和扇區分配表。這種方法可以在原地編輯文檔文件而不用完全重寫。

但是,此存儲方法會導致一些冗餘,如未使用的扇區。當你往返文件時,你可以從頭開始有效地重新創建它,從而消除任何這種冗餘存儲工件。

+0

我相信你的答案是在目標 - 我聽說冗餘稱爲「二元灰塵」。我認爲你的答案實際上是文件中任何「往返」的意思:消除冗餘。 感謝您瞭解這兩個鏈接。 – JohnZaj 2009-07-12 21:17:34

相關問題