• AX2009使用NPOI导入数据-方法一


    Excel2003-97

     1 static void NPOI_ImportExcel2003(Args _args)
     2 {
     3     System.IO.FileStream                file=new System.IO.FileStream("D:\test.xls", System.IO.FileMode::Open,System.IO.FileAccess::Read);
     4     NPOI.HSSF.UserModel.HSSFWorkbook    workBook= new NPOI.HSSF.UserModel.HSSFWorkbook(file);
     5     NPOI.SS.UserModel.ISheet            sheet=workBook.GetSheetAt(0);
     6     System.Collections.IEnumerator      rows = sheet.GetRowEnumerator();
     7     NPOI.SS.UserModel.IRow              row;
     8     NPOI.SS.UserModel.ICell             cell;
     9     int                                 i,t;
    10     ;
    11     t=timenow();
    12     while (rows.MoveNext())
    13     {
    14         row = rows.get_Current();
    15         for(i=0;i<=175;i++)
    16         {
    17             cell = row.GetCell(i);
    18             if(cell)
    19               print cell.get_StringCellValue();
    20         }
    21     }
    22     file.Close();
    23     info(int2str(timenow()-t));
    24 }

    Excel2007

    跟2003-97版本差不多,只是workBook引用的class不一样(红色部分)

     1 static void NPOI_ImportExcel2007(Args _args)
     2 {
     3     System.IO.FileStream                file=new System.IO.FileStream("D:\test.xlsx", System.IO.FileMode::Open,System.IO.FileAccess::Read);
     4     NPOI.XSSF.UserModel.XSSFWorkbook    workBook= new NPOI.XSSF.UserModel.XSSFWorkbook(file);
     5     NPOI.SS.UserModel.ISheet            sheet=workBook.GetSheetAt(0);
     6     System.Collections.IEnumerator      rows = sheet.GetRowEnumerator();
     7     NPOI.SS.UserModel.IRow              row;
     8     NPOI.SS.UserModel.ICell             cell;
     9     int                                 i,t;
    10     ;
    11     t=timenow();
    12     while (rows.MoveNext())
    13     {
    14         row = rows.get_Current();
    15         for(i=0;i<=175;i++)
    16         {
    17             cell = row.GetCell(i);
    18             if(cell)
    19               print cell.get_StringCellValue();
    20         }
    21     }
    22     file.Close();
    23     info(int2str(timenow()-t));
    24 }

    两个版本导入读取Excel耗时几乎相同,用的是之前导出的数据,全部读取并print耗时3秒,如果不print,耗时1秒

  • 相关阅读:
    IOS中彻底删除mysql方法
    (iOS)Storyboard/xib小技巧
    (iOS)关于GCD死锁的问题
    android-通知Notification
    android-多线程
    android-服务Service
    android-OptionMenu
    android-SQLite 和 Content
    android-数据持久化
    Russia
  • 原文地址:https://www.cnblogs.com/rumenren/p/3160724.html
Copyright © 2020-2023  润新知