2012-10-02 143 views
2

我使用OpenXML SDK創建電子表格。該電子表格有幾個工作表,款式等OpenXML SDK保存.xlsx文件丟失

  • 當我在Excel中打開文件時,它呈現精細,沒有任何錯誤,並正確顯示的所有單元格的格式和數據。
  • 當我在移動設備上打開文件時,根據應用程序的不同,我收到的錯誤表明文件已損壞或完全丟失。

我在Excel中打開.xlsx文件並將其保存到另一個文件中;然後我在相應的zip文件內的目錄結構上做了一個diff。我注意到:

  • 新副本(經過Excel的副本)現在在所有測試的移動應用程序上正確呈現。
  • 只有新副本包括:
    • /docProps
    • /XL /主題
    • docProps/app.xml的
    • docProps.core.xml
    • docProps/theme1.xml
  • 只有舊副本包括:
    • /XL /工作表/ _rels/
    • 片#.xml.rels
  • 修改的文件:
    • 片#.XML
    • sharedStrings.xml
    • 樣式。 xml
    • workbook.xml
    • [CONTENT_TYPES]。XML

什麼我需要做的,之前這個文件在保存解決這些衝突?

+0

也許你不保存你創建的xlsx文件的某些部分。 Excel可以哄騙它並顯示該文件,但其他一些編輯器無法在沒有它們的情況下閱讀這些文件。這只是一個猜測。 –

+0

我創建了兩種字體,一種邊框,一種CellStyleFormat,幾種填充和幾種CellFormats,以將它們與單元相關聯,所有這些都包括所需的默認值。除了顯而易見的工作表和零件等,還需要什麼?這些_rels物品去哪裏? – tsilb

+0

確保通過調用'spreadsheet.WorkbookPart.WorkbookStylesPart.Stylesheet.Save();'單獨保存樣式表(如果添加了)。 –

回答