首先下载NPOI,引入NPOI
读Excel:
//1.获取工作簿对象
using(FileStream fs = File.OpenRead("read.xls"))
{
IWorkbook wkBook = new HSSFWorkbook(fs);
//获取所有的工作表
//wkBook.NumberOfSheets
for (int i = 0; i < wkBook.NumberOfSheets; i++)
{
//获取工作表
ISheet sheet = wkBook.GetSheetAt(i);
//获取所有的行
for (int j = 0; j <= sheet.LastRowNum; j++)
{
//获取当前行
IRow row = sheet.GetRow(j);
//获取所有的单元格
for (int k = 0; k < row.LastCellNum; k++)
{
//获取当前单元格的值
ICell cell = row.GetCell(k);
string value =cell==null?"null":cell.ToString();
Console.Write("{0} | ",value);
}
Console.WriteLine();
}
}
}
写Excel:
List<Person> list = new List<Person>()
{
new Person(){Name="张三",Age=12,Email="zs@132.com"},
new Person(){Name="李四",Age=23,Email="ls@qq.com"},
new Person(){Name="wangwang",Age=23,Email="ww@qaswd.com"}
};
//创建工作簿
IWorkbook wkBook = new HSSFWorkbook();
//创建工作表
ISheet sheet = wkBook.CreateSheet("list for Person");
//像工作表中插入行和单元格
for (int i = 0; i < list.Count; i++)
{
//创建行
IRow row = sheet.CreateRow(i);
//创建单元格,并设置数据
row.CreateCell(0).SetCellValue(list[i].Name);
row.CreateCell(1).SetCellValue(list[i].Age);
row.CreateCell(2).SetCellValue(list[i].Email);
}
//保存
//之前先创建流
using(FileStream fs = File.OpenWrite("list.xls"))
{
wkBook.Write(fs);
}