简介
Spire.XLS for .NET 是一款专业的 .NET Excel 组件, 它可以用在各种 .NET 框架中,包括 ASP.NET 和 Windows Forms 等相关的 .NET 应用程序。Spire.XLS for .NET 提供了一个对象模型 Excel API,使开发人员可以快速地在 .NET 平台上完成对 Excel 的各种编程操作,如根据模板创建新的 Excel 文档,编辑现有 Excel 文档以及对 Excel 文档进行转换
代码
using Spire.Xls;
using System.Linq;
namespace GlobalTools
{
public class Excel
{
private Workbook workbook = new Workbook();
private Worksheet sheet;
public Excel(bool isnew,string path=null)
{
if (isnew)
{
workbook = new Workbook();
workbook.Worksheets[1].Remove();
}
else
workbook.LoadFromFile(path);
sheet = workbook.Worksheets[0];
}
public void Save(string path=null)
{
if (path == null) workbook.Save();
else workbook.SaveToFile(path, ExcelVersion.Version2016);
return;
}
public int GetRawCount()=> sheet.Rows.Count();
public int GetColumnCount() => sheet.Columns.Count();
public string this[int row,int column]
{
get => sheet.Range[((char)(65 + column)).ToString() + (row + 1).ToString()].Text;
set => sheet.Range[((char)(65 + column)).ToString() + (row + 1).ToString()].Text = value;
}
public string this[string index]
{
get => sheet.Range[index].Text;
set => sheet.Range[index].Text = value;
}
}
}
解释
该封装只是个简单封装,可以快速操作单张表数据
1.public Excel(bool isnew,string path=null)
初始化对象,如果是新建文件,isnew为true,path不填,反之为false,path为文件地址
2.public void Save(string path=null)
保存文件,如果是新建文件,path为保存的地址,否则不填(如果为是载入文件,那么带有path参数为另存为的位置)
例子
新建文件
Excel excel = new Excel(true);
excel[0, 0] = "Hello";
excel[0, 1] = "World";
excel[1, 0] = "Hello";
excel[1, 1] = "C#";
excel.Save("test.xlsx");
载入已有文件
Excel excel = new Excel(false,"test.xlsx");
excel[0, 1] = "MyExcel";
excel.Save("test.xlsx");
结语
1.使用时请引入Nuget包
PS:学习用可以用Free版本的
2.如果单元格为空,在程序操作的时候请判断一下是否存在数据
if(excel[i,j]!=null)
{
//do some thing
}
else
{
//do other thing
}
3.单元格对应索引就是 1,A 对应 0,0 对应 行号,列号