前提是本机须安装办公室才能运行,且不同的办公室版本之间可能会有兼容问题,从Nuget下载Microsoft.Office.Interop.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
读写代码如下:
使用先; 使用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
读写代码如下:
使用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
读写代码如下:
使用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的几种方法