一个.NET库,能够读取/写入没有安装Microsoft Office的Office格式。没有COM +,没有互操做。spa
public class ExcelNpoiTest { /// <summary> /// NPOI基础的Excel建立 /// </summary> public static void CreateExcel() { //建立工做薄 HSSFWorkbook wk = new HSSFWorkbook(); //建立一个名称为mySheet的表 ISheet tb = wk.CreateSheet("mySheet"); for (int i = 0; i < 20; i++) { //建立行 IRow row = tb.CreateRow(i); for (int j = 0; j < 20; j++) { //建立列 ICell cell = row.CreateCell(j); //赋值 cell.SetCellValue($"[{i},{j}]"); } } //打开一个现有文件或建立一个新文件以进行写入。 using (FileStream fs = File.OpenWrite(@"D:\myxls.xls")) { //向打开的这个xls文件中写入mySheet表并保存。 wk.Write(fs); } } /// <summary> /// NPOI基础的Excel读取 /// </summary> public static void ReadExcel() { //打开现有文件以进行读取。 using (FileStream fs = File.OpenRead(@"D:\myxls.xls")) { //把文件写入wk中 HSSFWorkbook wk = new HSSFWorkbook(fs); for (int i = 0; i < wk.NumberOfSheets; i++) { //获取sheet ISheet sheet = wk.GetSheetAt(i); for (int j = 0; j < sheet.LastRowNum; j++) { //获取行 IRow row = sheet.GetRow(j); if (row != null) { for (int k = 0; k < row.LastCellNum; k++) { //获取列 ICell cell = row.GetCell(k); if (cell != null) { //获取值 Console.Write(cell.ToString()); } } } Console.WriteLine(); } } } } }