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

c#分享

时间:2023-04-11 01:25:06 C#

在excel文件内嵌资源中使用excel文件。我目前正在编写一个空白的excel文件,但想使用预制的excel文件并将数据导出到适当的单元格。我不知道如何告诉程序使用资源文件夹中的xls文件而不是制作一个空白的excel文件。到目前为止,这是保存它的代码。我正在使用C#2008速成版。谢谢我的资源参考是:Properties.Resources.gradesheetExcel.ApplicationxlApp;Excel.工作簿xlWorkBook;Excel.工作表xlWorkSheet;objectmisValue=System.Reflection.Missing.Value;xlApp=newExcel.ApplicationClass();xlWorkBook=xlApp.Workbooks.Add(misValue);xlWorkSheet=(Excel.Worksheet)xlWorkBook.Worksheets.get_Item(1);//向excel中添加数据xlWorkSheet.Cells[1,1]=firstName;xlWorkSheet.Cells[2,1]=姓氏;xlWorkBook.Close(true,misValue,misValue);xlApp.Quit();释放对象(xlWorkSheet);释放对象(xlWorkBook);释放对象(xlApp);您需要从资源中获取excel文件并将其保存到文件中。然后你可以在工作簿上打开一个:xlApp.Workbooks.Open(fileName);这应该可以为您解决问题。(在.NET4.5中测试)。publicvoidopenExcelTemplateFromResources(){stringtempPath=System.IO.Path.GetTempFileName();System.IO.File.WriteAllBytes(tempPath,Properties.Resources.excelResource);Excel.ApplicationexcelApplication=newExcel.Application();卓越。_工作簿excelWorkbook;excelWorkbook=excelApplication.Workbooks.Open(tempPath)excelApplication.Visible=true;//此时由用户保存文件但是,如果您可以使用.XLSX而不是.XLS,则最好使用EPPlus而不是Interop来创建Excel文件。它更容易,并且没有Interop存在的所有问题。根据此链接,根据您要对Excel文件执行的操作以及您将如何使用它,方案略有不同。您可以:首先,您应该使用此函数获取资源文件流:publicstaticStreamGetResourceFileStream(stringfileName){AssemblycurrentAssembly=Assembly.GetExecutingAssembly();//获取所有嵌入资源string[]arrResources=currentAssembly.GetManifestResourceNames();foreach(stringresourceNameinarrResources){if(resourceName.Contains(fileName)){returncurrentAssembly.GetManifestResourceStream(resourceName);}}返回空值;然后你可以使用流或者你可以将流保存到文件:HowtosaveastreamSavetofile。您可以创建一个Excel模板文件(.xlt),然后基于该模板打开一个新的.xls文件。Sincerely,AB以上是C#学习教程:c#使用内嵌资源中的excel文件,分享全部内容。如果对大家有用,需要进一步了解C#学习教程,希望大家多多关注。本文来自网络收藏,不代表立场,如涉及侵权,请点击右边联系管理员删除。如需转载请注明出处: