本文转载自微信公众号《后端Q》,作者柯南。转载请联系后台Q公众号。什么是NPOIWhat'sNPOI这个项目是http://poi.apache.org/上POIJava项目的.NET版本。POI是一个开源项目,可以帮助您读写xls、doc、ppt文件。它有广泛的应用。例如,你可以用它来一个。无需在您的服务器上安装MicrosoftOffice套件即可生成Excel报告,并且比在后台调用MicrosoftExcelActiveX更高效;b.从Office文档中提取文本以帮助您实现全文索引功能(大多数时候此功能用于创建搜索引擎)。C。从Office文档中提取图像d.生成包含公式的Excel工作表在没有安装MicrosoftOfficeExcel的机器上也可以操作Excel。另一种方法是使用.NET自带的excelAPI,但这种方法需要在运行环境中安装MicrosoftExcel。C#使用NPOI操作excel将DataTable数据导入excel//////将DataTable数据导入excel//////需要导入的数据///是否导入DataTable的列名///导入的excel表格名称///导入的数据行数(包含列名的行)publicintDataTableToExcel(System.Data.DataTabledata,stringsheetName,boolisColumnWritten){inti=0;intj=0;intcount=0;ISheetsheet=null;try{fs=newFileStream(fileName,FileMode.OpenOrCreate,FileAccess.ReadWrite);if(fileName.IndexOf(".xls")>0)//2003版本workbook=newHSSFWorkbook();if(workbook!=null){sheet=workbook.CreateSheet(sheetName);}else{return-1;}if(isColumnWritten==true)//写入DataTable的列名{IRowrow=sheet.CreateRow(0);for(j=0;j///将excel中的数据导入DataTable中//////excelworksheet的名称///第一行是DataTable的列名///返回的DataTablepublicSystem.Data.DataTableExcelToDataTable(stringsheetName,boolisFirstRowColumn){ISheetsheet=null;vardata=newSystem.Data.DataTable();intstartRow=0;try{fs=newFileStream(fileName,FileMode.Open,FileAccess.Read);if(fileName.IndexOf(".xls")>0)//2003版本workbook=newHSSFWorkbook(fs);if(sheetName!=null){sheet=workbook.GetSheet(sheetName);if(sheet==null)//如果没有找到指定sheetName对应的sheet,则尝试获取第一张纸{sheet=workbook.GetSheetAt(0);}}else{sheet=workbook.GetSheetAt(0);}if(sheet!=null){IRowfirstRow=sheet.GetRow(0);intcellCount=firstRow.LastCellNum;//最后一个单元格的编号在一行中即总列数for(inti=0;i