我想将一个完整的 XML 文件转换为 XLSX,但我不确定该怎么做。 我在谷歌上搜索了一个解决方案,但大多数时候我只能找到另一个方向的方法,例如 XLSX 到 XML。 在 Microsoft 页面上,我找到了一个 xmlconvertclass,但我不确定如何使用该类。
过去有人做过类似的事情并且可以帮助我吗?
最佳答案
尝试下面的代码,我将 XML 转换为 DataSet,然后将 DataSet 导出到 Excel
DataSet ds = new DataSet();
//Convert the XML into Dataset
ds.ReadXml(@"E:\movie.xml");
//Retrieve the table fron Dataset
DataTable dt = ds.Tables[0];
// Create an Excel object
Microsoft.Office.Interop.Excel.Application excel = new Microsoft.Office.Interop.Excel.Application();
//Create workbook object
string str = @"E:\test.xlsx";
Microsoft.Office.Interop.Excel.Workbook workbook = excel.Workbooks.Open(Filename: str);
//Create worksheet object
Microsoft.Office.Interop.Excel.Worksheet worksheet = workbook.ActiveSheet;
// Column Headings
int iColumn = 0;
foreach (DataColumn c in dt.Columns)
{
iColumn++;
excel.Cells[1, iColumn] = c.ColumnName;
}
// Row Data
int iRow = worksheet.UsedRange.Rows.Count - 1;
foreach (DataRow dr in dt.Rows)
{
iRow++;
// Row's Cell Data
iColumn = 0;
foreach (DataColumn c in dt.Columns)
{
iColumn++;
excel.Cells[iRow + 1, iColumn] = dr[c.ColumnName];
}
}
((Microsoft.Office.Interop.Excel._Worksheet)worksheet).Activate();
//Save the workbook
workbook.Save();
//Close the Workbook
workbook.Close();
// Finally Quit the Application
((Microsoft.Office.Interop.Excel._Application)excel).Quit();
关于C# .xml 到 .xlsx 如何?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17649886/