我最近繼承了一些遺留代碼,讓您瞭解我對此主題的熟悉程度。爲Office Open XML包中的默認條目設置ContentType [Content_Types] .xml
我有一個C#應用程序,它通過構造一個包含必需XML文件的zip包來創建Excel電子表格(.xlsx)。應用程序手動創建[Content_Types] .xml文件,並使用Visual J#壓縮包。我試圖通過使用System.IO.Packaging.ZipPackage來擺脫對Visual J#的依賴。
我可以用所有必要的文件正確地構造zip包。當我添加包部件時,我設置了它們的內容類型字符串,這反映在[Content_Types] .xml中。但是,[Content_Types] .xml缺少一些必要的條目,Excel會將其解釋爲損壞的文件。
例如,在一個正確的內容類型的文件,有一個名爲「RELS」默認項:
<Default Extension="rels" ContentType="application/vnd.openxmlformats-package.relationships+xml"/>
在我的zip包,該RELS項目中,以下的ContentType屬性爲空字符串。由於rels不是包中的一部分,我不知道如何設置它的ContentType。有沒有辦法做到這一點手動?