jxl不支持excel 07导入,将POI及jxls升级到较新的版本
1.在项目中增加已下jar包:
poi-ooxml-3.7.jar
poi-ooxml-schemas-3.7.jar
poi-3.7.jar(替换,将原有poi包删除)
jxls-core-1.0.jar(同上)
jxls-reader-1.0.jar(同上)
commons-jexl-2.1.1.jar(同上)
2.修改导入将jxl替换为poi,需使用poi的包
Workbook wb = Workbook.getWorkbook(in);
Sheet sheet = wb.getSheet(sheetIndex);
int rows = sheet.getRows();
int cols = sheet.getColumns();
String[][] content = new String[rows - begin][cols];
for ( int i = begin; i < rows; i++) {
for ( int j = 0 ; j < cols; j++) {
Cell cell = sheet.getCell(j, i);
content[i - begin][j] = cell.getContents();
}
}
|
Workbook wb = new XSSFWorkbook(in);
Sheet sheet = wb.getSheetAt(sheetIndex);
int rows = sheet.getLastRowNum()+ 1 ;
int cols = sheet.getRow(begin).getLastCellNum();
String[][] content = new String[rows - begin][cols];
Cell tempCell = null ;
for ( int i = begin; i < rows; i++) {
Row r = sheet.getRow(i);
for ( int j = 0 ; j < cols; j++) {
tempCell = r.getCell(j);
String str = "" ;
if (tempCell.getCellType()==HSSFCell.CELL_TYPE_STRING){
str = tempCell.getStringCellValue();
} else if (tempCell.getCellType()==HSSFCell.CELL_TYPE_NUMERIC){
str = String.valueOf(tempCell.getNumericCellValue());
}
content[i - begin][j] = str;
}
}
|
3.将模板导出的HSSFWorkbook workbook;改为org.apache.poi.ss.usermodel.Workbook workbook;
HSSFWorkbook workbook;
String templateFileName = sc.getRealPath( "/" ) + templatePath;
try {
in = new BufferedInputStream( new FileInputStream(templateFileName));
XLSTransformer transformer = new XLSTransformer();
workbook = transformer.transformXLS(in, map);
OutputStream out = response.getOutputStream();
workbook.write(out);
out.flush();
|
org.apache.poi.ss.usermodel.Workbook workbook;
String templateFileName = sc.getRealPath( "/" ) + templatePath;
try {
in = new BufferedInputStream( new FileInputStream(templateFileName));
XLSTransformer transformer = new XLSTransformer();
workbook = transformer.transformXLS(in, map);
OutputStream out = response.getOutputStream();
workbook.write(out);
out.flush();
|
private static Workbook create(InputStream inp) throws IOException, InvalidFormatException {
if (!inp.markSupported()) {
inp = new PushbackInputStream(inp, 8);
}
if (POIFSFileSystem.hasPOIFSHeader(inp)) {
return new HSSFWorkbook(inp);
}
if (POIXMLDocument.hasOOXMLHeader(inp)) {
return new XSSFWorkbook(OPCPackage.open(inp));
}
throw new IllegalArgumentException("你的excel版本目前poi解析不了");
}
分享到:
相关推荐
《Excel2003至Excel2007交互式命令参考指南》是为帮助用户熟练掌握Excel2003到Excel2007之间过渡时期的各种交互式操作而设计的一份详细参考资料。在这个阶段,微软的Excel办公软件经历了一系列的重要改进和功能升级...
通过使用Excel这种通用且功能强大的电子表格软件,用户能够预先在Excel环境中对思迅相关的数据进行编辑,如商品信息、会员信息、供应商信息以及分类等,然后再将这些整理好的数据批量导入到思迅系统中。 在使用这款...
通过"EXCEL快速导入导出(增加数据库直接导出及2007文件格式支持)"实例,开发者可以学习到易语言与Excel交互的关键技术,以及如何处理不同版本的Excel文件。这不仅有助于提升个人技能,也能在实际项目中发挥重要...
Excel 2007是继2003后的重大升级,它引入了新的界面设计——Ribbon界面,显著提升了用户体验。此外,2007版的改进还包括: 1. **扩展的行列数**:行数增加到1,048,576,列数增加到16,384,大幅度提高了数据存储能力...
本篇文章将详细讲解如何利用VC++6.0生成Excel文件并从Excel文件导入数据到DatGrid控件中。 首先,要实现这个功能,我们需要包含必要的头文件,并链接Office的COM库。在项目设置中,添加`atl.lib`和`mscomctl.lib`库...
在IT行业中,Excel导入导出性能优化是一个常见且重要的议题,尤其对于处理大量数据的应用程序。Excel文件格式广泛用于数据存储和分析,但其导入和导出操作可能会对系统性能产生显著影响,尤其是在高并发环境下。以下...
首先,"U8薪资从Excel导入通用版"是指U8系统提供的一种便捷的数据录入方式,允许用户将已经整理好的薪资数据以Excel表格的形式导入到系统中。这种方式极大地提高了数据处理的效率,避免了手动输入可能带来的错误,...
首先,Excel导入工具支持多种数据库格式,包括但不限于MySQL、SQL Server、Oracle、Access等,这样用户就可以将Excel工作簿中的数据轻松导入到这些数据库系统中,或者将数据库中的数据导出到Excel文件,以便进行更...
在导入Excel到SQL Server时,开发者可能会使用`System.Data.SqlClient`命名空间中的`SqlConnection`类来建立与SQL Server的连接,`SqlCommand`类来执行SQL命令,以及`SqlDataAdapter`和`DataSet`类进行数据的填充和...
总的来说,Excel导入Access是一种常见数据迁移方式,适用于需要将临时或轻量级的数据管理升级到更正式的数据库系统。ASP作为服务器端脚本语言,能够有效地连接和操作这两种工具,实现数据的自动化处理。通过理解和...
注意:如果你安装过office2007然后又卸载重新安装回office2003而且office2007卸载的时候没卸载干净,那么这个软件很有可能会把Excel生成office2007的格式,囧。 解决办法是在开始->运行->输入“regedit”(打开...
2. **创建Excel工作簿**:使用`XSSFWorkbook`类创建一个新的Excel工作簿对象,它是HSSFWorkbook的升级版,支持更多的Excel功能。 3. **添加工作表**:通过`createSheet()`方法创建新的工作表,并设置工作表的名称。...
在IT行业中,Excel数据处理是一项常见的任务,尤其是在数据分析、报表制作和信息管理等领域。...通过研究和理解这个示例,你将能够将Excel导入导出功能整合到自己的Java Web项目中,提升应用的交互性和功能性。
遍历Excel数据,用`PointPairList`对象存储坐标点,然后用`CurveItem`对象将这些点绘制到图上。可以创建两条曲线,分别表示不同的数据系列。 4. **点击事件处理**:为图形添加鼠标点击事件监听器。当用户点击图表时...
在标题提到的“Excel2003导出文件(Excel.h和Excel.cpp)”中,我们可以看到这是关于使用C++与Excel进行交互的一个话题。在描述中,提到了网络上常见的Excel导出文件是基于Office2000的Excel9版本,而这次我们有了...
标题中的“基本信息导入工具的EXCEL模板”指的是管家婆软件提供的一个特定格式的Excel表格,用于帮助用户准备导入到系统中的数据。这个模板通常包含了所有需要导入的数据字段,如商品信息、客户信息、供应商信息等,...
1. **读取Excel文件**:NPOI可以打开XLS(Excel 97-2003工作簿)和XLSX(Excel 2007及以上工作簿)文件,允许开发者访问工作表、行、列和单元格的数据。 2. **写入Excel文件**:开发者可以创建新的Excel文件,或者...
需要注意的是,由于`phpExcel`对大型或复杂Excel文件的处理可能较慢,且不支持某些高级功能,因此在处理大量数据或高复杂度的Excel时,你可能需要考虑其他库,如`phpspreadsheet`(`phpExcel`的升级版)。...
Excel数据导入SQL工具是一种实用程序,它允许用户方便地将Excel电子表格中的数据批量导入到SQL数据库中。这种工具在需要频繁更新数据库或者处理大量结构化数据时特别有用,例如在数据分析、报告制作或数据库初始化时...