当前位置: 首页 > 编程语言 > C#

C#.xml到.xlsx怎么样?将

时间:2023-04-11 12:00:42 C#

C#.xml共享到.xlsx怎么样?我想将一个完整的XML文件转换为XLSX,但我不知道该怎么做。我已经在谷歌上搜索了一个解决方案,但大多数时候我只能找到其他方向的方法,比如XLSX到XML。在Microsoft页面上,我找到了一个xmlconvertclass,但我不确定如何使用该类。过去有没有人做过这样的事情可以帮助我?尝试下面的代码,我将XML转换为DataSet,然后将DataSet导出到ExcelDataSetds=newDataSet();//将XML转换为数据集ds.ReadXml(@"E:movie.xml");//从数据集中检索表DataTabledt=ds.Tables[0];//创建一个Excel对象Microsoft.Office.Interop.Excel.Applicationexcel=newMicrosoft.Office.Interop.Excel.Application();//创建工作簿对象stringstr=@"E:test.xlsx";Microsoft.Office.Interop.Excel.Workbook工作簿=excel.Workbooks.Open(文件名:str);//创建工作表对象Microsoft.Office.Interop.Excel.Worksheetworksheet=workbook.ActiveSheet;//列标题intiColumn=0;foreach(DataColumncindt.Columns){iColumn++;excel.Cells[1,iColumn]=c.ColumnName;}//行数据intiRow=worksheet.UsedRange.行数-1;foreach(DataRowdrindt.Rows){iRow++;//行的单元格数据iColumn=0;foreach(DataColumncindt.Columns){iColumn++;excel.Cells[iRow+1,iColumn]=dr[c.ColumnName];}}((Microsoft.Office.Interop.Excel._Worksheet)worksheet).Activate();//保存工作簿workbook.Save();//关闭工作簿workbook.Close();//最后退出应用程序((Microsoft.Office.Interop.Excel._Application)excel).Quit();更简单的解决方案:使用Excel中的数据源创建适合您需要的“模板”Xslx。对于每个xml数据文件,将数据连接添加到xml文件。如果需要,设置每次打开文件时刷新的数据连接。这是开箱即用的,根本没有代码(当然不包括xml生成)。或者,您可以通过ASP.Net应用程序(动态或非动态)发布Xml,并设置数据连接以从此asp.net应用程序收集数据。您需要读取XLSX文件格式的架构并编写XSLT文件以转换自定义XML文件。.NET有很好的XML支持,所以像这样的事情应该相当简单,从XML格式到XSLT的实际映射需要真正的努力。如果从数据集中获取多个表格,使用如下代码,需要注意将数据表格插入Excel的逻辑。以上是C#学习教程:C#.xml转.xlsx怎么样?如果分享的内容对你有用,需要进一步了解C#学习教程,希望大家多多关注——staticvoidMain(string[]args){DataSetds=newDataSet();//将XML转换为数据集ds.ReadXml(@"E:movies.xml");//从数据集中检索表//DataTabledt=ds.Tables[0];//创建一个Excel对象Microsoft.Office.Interop.Excel.Applicationexcel=newMicrosoft.Office.Interop.Excel.Application();//创建工作簿对象stringstr=@"E:test.xlsx";Microsoft.Office.Interop.Excel.Workbook工作簿=excel.Workbooks.Open(文件名:str);foreach(ds.Tables中的数据表选项卡){FromDataTableToExcel(tab,excel,workbook);}//保存工作簿workbook.Save();//关闭工作簿workbook.Close();//最后退出应用程序((Microsoft.Office.Interop.Excel._Application)excel).Quit();}staticvoidFromDataTableToExcel(DataTabledt,Microsoft.Office.Interop.Excel.Applicationexcel,Microsoft.Office.Interop.Excel.Workbookworkbook){//创建工作表对象ectMicrosoft.Office.Interop.Excel.Worksheetworksheet=workbook.ActiveSheet;//列标题intiColumn=worksheet.UsedRange.Columns.Count-1;intiColumn1=iColumn;intiColumn2=iColumn;foreach(DataColumncindt.Columns){iColumn++;excel.Cells[1,iColumn]=c.ColumnName;}//行数据intiRow=0;foreach(DataRowdrindt.Rows){iRow++;//行的单元格数据foreach(DataColumncindt.Columns){iColumn1++;excel.Cells[iRow+1,iColumn1]=dr[c.ColumnName];}iColumn1=iColumn2;}((Microsoft.Office.Interop.Excel._Worksheet)worksheet).Activate();}本文收集自网络,不代表立场。如涉及侵权,请点击右侧联系管理员删除。如有转载请注明出处:

最新推荐
猜你喜欢