我使用以下代码及其工作。但每次创建一个同名的Excel工作表时。
有人可以告诉我,与XML表格同名的导出excel表格如何具有???????
private void button2_Click(object sender, EventArgs e)
{
MSDN.Sample.XMLToExcel.OpenXMLOffice objTest = new MSDN.Sample.XMLToExcel.OpenXMLOffice();
objTest.XMLToExcel(textBox14.Text);
MessageBox.Show("Umpire Report Extracted successfully.");
}
答案 0 :(得分:2)
您的给定示例使用DataSet.ReadXml
将XML文件转换为DataSet,然后使用DataSet的名称(DataSet.DataSetName
)作为文件名,以及表的名称({{ 3}})作为工作表名称。 DataTable.TableName
根据XML文件的内容选择这些名称。如果要更改该行为,您有两种选择:
创建一个根据需要创建Excel的方法:
将此添加到OpenXMLOffice
类:
public void XMLToExcel(string strXMLPath, string outputFileName, string sheetName)
{
string strPath = Path.GetDirectoryName(strXMLPath);
DataSet dsXML = new DataSet();
dsXML.ReadXml(strXMLPath);
strPath = strPath + "\\" + outputFileName + ".xlsx";
DataTable tblXML = dsXML.Tables[0];
tblXML.TableName = sheetName;
DataTableToFilePath(tblXML, strPath);
}
并将其称为:
var objTest = new MSDN.Sample.XMLToExcel.OpenXMLOffice();
objTest.XMLToExcel(textBox14.Text, "My Excel", "My Sheet");
更改XML文件的内容: