1
私はアプリケーションからXMLファイルにデータをエクスポートする必要があります。私はOpenXMLを使用してこれを実行しようとしていますが、私が使用しているコードではファイルが開かれないようにします。OpenXMLは空のSheetData要素を生成します
<?xml version="1.0" encoding="utf-8"?>
<x:worksheet xmlns:x="http://schemas.openxmlformats.org/spreadsheetml/2006/main">
<x:sheetData /> <---- this guy here.
<x:sheetData>
<x:row><x:c t="str">
<x:v>Key</x:v></x:c>
<x:c t="str"><x:v>Value</x:v></x:c>
</x:row>
</x:sheetData>
</x:worksheet>
これは私がファイルを生成するために使用するコードです。
SpreadsheetDocument spreadsheetDocument = SpreadsheetDocument.Create(System.IO.Path.Combine(currentPath, "Export Data") + [email protected]"\Export-{DateTime.Now.Year}.xlsx", SpreadsheetDocumentType.Workbook);
WorkbookPart workbookpart = spreadsheetDocument.AddWorkbookPart();
workbookpart.Workbook = new Workbook();
WorksheetPart worksheetPart = workbookpart.AddNewPart<WorksheetPart>();
worksheetPart.Worksheet = new Worksheet(new SheetData());
Sheets sheets = spreadsheetDocument.WorkbookPart.Workbook.AppendChild<Sheets>(new Sheets());
Sheet sheet = new Sheet()
{
Id = spreadsheetDocument.WorkbookPart.
GetIdOfPart(worksheetPart),
SheetId = 1,
Name = "Temp"
};
sheets.Append(sheet);
SheetData sheetData = worksheetPart.Worksheet.AppendChild(new SheetData());
Row row = new Row();
row.Append(
ConstructCell("Key", CellValues.String),
ConstructCell("Value", CellValues.String));
sheetData.AppendChild(row);
worksheetPart.Worksheet.Save();
spreadsheetDocument.Close();
追加の「SheetData」要素がどこから来ているのか教えていただけますか?私は見るだけではわかりません。
本当にありがとうございました!私はまったく同じことをして、それがどのように作成されているのか分からなかった。これは私のためにそれを固定した。 – dodegaard