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

如何以编程方式将XML数据导入Excel文件?分享

时间:2023-04-10 12:02:06 C#

如何以编程方式将XML数据导入Excel文件?下面的代码可以帮助我从Excel中导出XML数据:Excel.Applicationapplication=newExcel.Application();application.Workbooks.Open(excelFilepath,Missing.Value,Missing.Value,Missing.Value,Missing.Value,Missing.Value,Missing.Value,Missing.Value,Missing.Value,Missing.Value,Missing.Value,Missing.值、缺失值、缺失值、缺失值);字符串数据=空;application.ActiveWorkbook.XmlMaps[1].XmlExport(输出数据);现在我正在寻找可以帮助我将XML数据导入Excel的代码,就像我通过单击“开发人员”选项卡然后单击“导入XML”来手动导入文件一样。有人可以告诉我该怎么做吗?使用与MSDN网站相同的系统。我花了很短的时间找到以下链接:http://msdn.microsoft.com/en-us/library/microsoft.office.interop.excel.xmlmap.import%28v=office.14%29ExcelInteropMethods与XmlMap相关。该特定链接是XmlMap.Import函数,它采用url(filePath)并导入xml数据。在该页面上还有一个指向ImportXml()函数的链接,该函数可以接受xml字符串作为函数的直接输入,而不是使用URL。对于这两者,代码假定已经定义了XmlMap。我自己不知道如何通过界面以编程方式在Excel文档中定义XmlMap。我遇到了同样的问题:XmlMaps[1].Import()不起作用,它只是崩溃而且我不知道如何定义所需的XmlMaps。我找到了XmlMaps.Add(stringpattern)方法,但没有传递给它的xml模式。我手里只有xml文件。这是我的情况:我有一个xml,我可以通过将xml文件拖放到excel2007中来手动将其导入到excel2007中。然后它弹出一个对话框,询问我如何打开xml。有3个选项:asxml,asreadonlyexcelsheet,asxmlsource。选择第一个选项,我的xml数据自动导入到excel中。然后我尝试通过C#做同样的事情,但我发现的每一种方法都不起作用。我坚持了3个小时。非常幸运的是,我终于找到了一个解决方案:你不需要使用XmlMaps,只需要使用OpenXml()。下面是将合法的xml导入excel的c#方法。创建一个新的C#项目。右键单击项目,单击“添加引用”,选择“.Net”选项卡,然后选择“Microsoft.Office.Interop.Excel”(如果找不到,请检查您的visualstudio是否安装了OfficeDevelopmentUtilities),单击确定。这样你就可以在c#中运行excel了。粘贴下面的代码。注意“xApp.Workbooks.OpenXML()”方法,我们将“xlXmlLoadImportToList”选项传递给它,它的作用与我将xml拖到excel中并选择第一个选项一样。这是解释不同选项的链接http://msdn.microsoft.com/en-us/library/microsoft.office.interop.excel.workbooks.openxml(v=office.11??).aspxPut"xml"和“xlsx”变量替换为您自己的文件路径,将其替换为“d:my.xml”“d:my.xlsx”然后您的xml将保存为xlsx。祝好运!usingSystem;使用System.Collections.Generic;使用System.Linq;使用系统文本;使用System.Reflection;使用Microsoft.Office.Interop.Excel;使用Microsoft.Office.Interop;使用System.IO;命名空间SaveXmlAsExcel{类程序{staticvoidMain(string[]args){stringxml=args[0];字符串xlsx=args[1];if(false==File.Exists(xml)){Console.WriteLine("{0}文件不存在",xlsx);返回;}Microsoft.Office.Interop.Excel.ApplicationxApp=newMicrosoft.Office.Interop.Excel.Application();Microsoft.Office.Interop.Excel.WorkbookexcelWorkBook=xApp.Workbooks.OpenXML(xml,Type.Missing,Microsoft.Office.Interop.Excel.XlXmlLoadOption.xlXmlLoadImportToList);excelWorkBook.SaveAs(xlsx,Type.Missing,Type.Missing,Type.Missing,Type.Missing,Type.Missing,Microsoft.Office.Interop.Excel.XlSaveAsAccessMode.xlNoChange);excelWorkBook.Close();xApp.Workbooks.Close();这是我的xml:它必须具备excel才能成功解析它的格式。以上就是C#学习教程:如何以编程方式将XML数据导入Excel文件?分享的所有内容,如果对你有用,需要了解更多C#学习教程,希望大家多多关注—0000255255255255本文收集自网络,并非原创代表一个立场。如涉及侵权,请点击右侧联系管理员删除。如需转载请注明出处: