详解c#读写Excel的几种方法

  

  

前提是本机须安装办公室才能运行,且不同的办公室版本之间可能会有兼容问题,从Nuget下载Microsoft.Office.Interop.Excel

  

详解c#读写Excel的几种方法

  

读写代码如下:

        使用Microsoft.Office.Interop.Excel;   用Excel=Microsoft.Office.Interop.Excel;      私人空间btn_Office_Click(对象发送方,EventArgs e)   {   字符串importExcelPath=癊: \ \ import.xlsx”;   字符串exportExcelPath=癊: \ \ export.xlsx”;//创建   Excel。应用xlApp=new Excel.Application ();   xlApp。DisplayAlerts=false;   xlApp。可见=false;   xlApp。ScreenUpdating=false;//打开Excel   Excel。工作簿xlsWorkBook=xlApp.Workbooks。打开(importExcelPath System.Type。失踪,System.Type。System.Type.Missing失踪,   System.Type。失踪,System.Type。失踪,System.Type。失踪,System.Type。失踪,System.Type。失踪,System.Type。System.Type.Missing失踪,   System.Type。失踪,System.Type。失踪,System.Type。失踪,System.Type.Missing);//处理数据过程,更多操作方法自行百度   Excel。工作表板=xlsWorkBook.Worksheets[1];//工作薄从1开始,不是0   表。细胞[1]=安馐浴?//另存   xlsWorkBook。SaveAs (exportExcelPath类型。失踪,类型。失踪,类型。失踪,类型。失踪,类型。XlSaveAsAccessMode.xlNoChange失踪,   类型。失踪,类型。失踪,类型。失踪,类型。失踪,Type.Missing);//关闭Excel进程   ClosePro (xlApp xlsWorkBook);   }      公共空间ClosePro (Excel。应用程序xlApp Excel。工作簿xlsWorkBook)   {   如果(xlsWorkBook !=null)   xlsWorkBook。(真的,类型。失踪,Type.Missing);   xlApp.Quit ();//安全回收进程   System.GC.GetGeneration (xlApp);   IntPtr t=新IntPtr (xlApp.Hwnd);//获取句柄   int k=0;   GetWindowThreadProcessId k (t);//获取进程唯一标志   System.Diagnostics。过程p=System.Diagnostics.Process.GetProcessById (k);   p.Kill ();//关闭进程   }      

  

地址:https://github.com/tonyqus/npoi

  

在不安装办公室的时候也是可以读写的,速度很快,从Nuget下载NPOI

  

详解c#读写Excel的几种方法

  

读写代码如下:

        使用先;   使用NPOI;   使用NPOI.SS.UserModel;      私人空间btn_NPOI_Click(对象发送方,EventArgs e)   {   字符串importExcelPath=癊: \ \ import.xlsx”;   字符串exportExcelPath=癊: \ \ export.xlsx”;   IWorkbook工作簿=WorkbookFactory.Create (importExcelPath);   ISheet表=workbook.GetSheetAt(0);//获取第一个工作薄   IRow行=(IRow) sheet.GetRow(0);//获取第一行//设置第一行第一列值,更多方法请参考源官方演示   row.CreateCell (0) .SetCellValue("测试");//设置第一行第一列值//导出excel   fs=new FileStream文件流(exportExcelPath FileMode。创建、FileAccess.ReadWrite);   workbook.Write (fs);   fs.Close ();   }      

  

地址:https://github.com/ClosedXML/ClosedXML

  

从Nuget下载ClosedXml

  

详解c#读写Excel的几种方法

  

读写代码如下:

        使用ClosedXML;   使用ClosedXML.Excel;      私人空间btn_ClosedXML_Click(对象发送方,EventArgs e)   {   字符串importExcelPath=癊: \ \ import.xlsx”;   字符串exportExcelPath=癊: \ \ export.xlsx”;   var工作簿=new XLWorkbook (importExcelPath);      IXLWorksheet表=workbook.Worksheet(1);//这个库也是从1开始//设置第一行第一列值,更多方法请参考官方演示   表。电池(1,1)value=" https://www.yisu.com/zixun/test ";//该方法也是从1开始,非0      workbook.SaveAs (exportExcelPath);   }      

  

地址:https://www.e-iceblue.com/Introduce/free-xls-component.html

  

尖顶分免费和收费,无特殊需求用免费即可

  

从Nuget下载免费的尖顶。xls为。net

  

详解c#读写Excel的几种方法

  

读写代码如下:

        使用Spire.Xls;      私人空间btnSpire_Click(对象发送方,EventArgs e)   {   字符串importExcelPath=癊: \ \ import.xlsx”;   字符串exportExcelPath=癊: \ \ export.xlsx”;      Spire.Xls。工作簿工作簿=new Spire.Xls.Workbook ();   workbook.LoadFromFile (importExcelPath);//处理Excel数据,更多请参考官方演示   Spire.Xls。工作表板=workbook.Worksheets [0];   sheet.Range [1]。文本=安馐浴?//该方法也是从1开始,非0      workbook.SaveToFile (exportExcelPath);   }

详解c#读写Excel的几种方法