ToB企服应用市场:ToB评测及商务社交产业平台

标题: Dotnet6 NPOI操作Excel基本操作总结 [打印本页]

作者: 伤心客    时间: 2023-9-4 15:55
标题: Dotnet6 NPOI操作Excel基本操作总结
背景

步骤

使用方法

  1. public static IWorkbook OpenWorkbook(string path)
  2.         {
  3.             using (var stream = File.OpenRead(path))
  4.             {
  5.                 if (Path.GetExtension(path) == ".xls")
  6.                     return new HSSFWorkbook(stream);
  7.                 else
  8.                     return new XSSFWorkbook(stream);
  9.             }
  10.         }
复制代码
  1. public static void MoveAndCopySheet(string path, int index = 0)
  2.         {
  3.             var workbook = OpenWorkbook(path);
  4.             var sheet = workbook.GetSheetAt(index);
  5.             if (sheet == null)
  6.                 throw new Exception($"Sheet 'At {index}' not found.");
  7.             
  8.             var clonedSheet = workbook.CloneSheet(0);
  9.             var cloneSheetName =  $"{sheet.SheetName}_copy_{DateTime.Now.ToShortTimeString().Replace(":","-")}";
  10.             workbook.SetSheetName(workbook.GetSheetIndex(clonedSheet), cloneSheetName);
  11.             workbook.SetSheetOrder(cloneSheetName, 0);
  12.             using (var stream = File.OpenWrite(path))
  13.             {
  14.                 workbook.Write(stream);
  15.             }
  16.         }
复制代码
  1. public static void MoveAndCopySheet(string path, string sheetName)
  2.         {
  3.             var workbook = OpenWorkbook(path);
  4.             var sheet = workbook.GetSheet(sheetName);
  5.             if (sheet == null)
  6.                 throw new Exception($"Sheet '{sheetName}' not found.");
  7.             workbook.SetSheetOrder(sheetName, 0);
  8.             var clonedSheet = workbook.CloneSheet(0);
  9.             workbook.SetSheetName(workbook.GetSheetIndex(clonedSheet), sheetName + "_copy");
  10.             using (var stream = File.OpenWrite(path))
  11.             {
  12.                 workbook.Write(stream);
  13.             }
  14.         }
复制代码
[code] public static void ProcessRows(string path, string sheetName)        {            var workbook = OpenWorkbook(path);            var sheet = workbook.GetSheet(sheetName);            if (sheet == null)                throw new Exception($"Sheet '{sheetName}' not found.");            for (int rowIndex = 0; rowIndex




欢迎光临 ToB企服应用市场:ToB评测及商务社交产业平台 (https://dis.qidao123.com/) Powered by Discuz! X3.4