public void OpenDxRecordsFormExcel()
    {
        try
        {
            var document = SpreadsheetDocument.Open(@"C:\DxRecordForm.xlsx",true);
            WorkbookPart workbookPart = document.WorkbookPart;

            var sheets = workbookPart.Workbook.Descendants<Sheet>();
            var sheet = sheets.First();

            WorksheetPart workSheetPart = ((WorksheetPart)workbookPart
                .GetPartById(sheet.Id));

            Cell headerCell = workSheetPart.Worksheet.Descendants<Cell>().Where(c => c.CellReference == "A1").First();
            headerCell.CellValue = new CellValue("NAME:" + "  " + "Test Text");

            workSheetPart.Worksheet.Save();
            workbookPart.Workbook.Save();
            document.Close();
        }
        catch (Exception e)
        {

        }


    }

我使用上面的方法将文本写入excel文档的一个单元格(.xlsx) . 执行上面的代码后,当我尝试打开excel文档时,我得到一个对话框,说“Excel在文件中找到了不可读的内容 . 你要恢复这个工作簿的内容吗?”如果我点击“是”打开excel文件,我得到另一条消息,excel能够在删除不可读的内容后打开文档 .

我可以看到A1单元格中的文本,但我不确定为什么打开文档时excel显示的消息 .

我是使用Open XML SDK读取/写入.xlsx文件的新手 .