/**
* 往Excel中插入图片
*
* @param dataSheet
* 待插入的工作表
* @param col
* 图片从该列开始
* @param row
* 图片从该行开始
* @param width
* 图片所占的列数
* @param height
* 图片所占的行数
* @param imgFile
* 要插入的图片文件
*/
public static void insertImg(WritableSheet dataSheet, int col, int row,
int width, int height, File imgFile) {
WritableImage img = new WritableImage(col, row, width, height, imgFile);
dataSheet.addImage(img);
}
使用jxl.jar实现对Excel读写的操作:
/**
* 读取Excel文件的内容
*
* @param file
* 待读取的文件
* @return
*/
public static String readExcel(String excelFileName) {
StringBuilder sb = new StringBuilder();
Workbook wb = null;
try {
// 文件输入流
InputStream stream = new FileInputStream(excelFileName);
// 构造Workbook(工作薄)对象
wb = Workbook.getWorkbook(stream);
} catch (BiffException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
if (wb == null)
return null;
// 获得了Workbook对象之后,就可以通过它得到Sheet(工作表)对象了
Sheet[] sheet = wb.getSheets();
if (sheet != null && sheet.length > 0) {
// 对每个工作表进行循环
for (int i = 0; i < sheet.length; i++) {
// 得到当前工作表的行数
int rowNum = sheet[i].getRows();
for (int j = 0; j < rowNum; j++) {
// 得到当前行的所有单元格
Cell[] cells = sheet[i].getRow(j);
if (cells != null && cells.length > 0) {
// 对每个单元格进行循环
for (int k = 0; k < cells.length; k++) {
// 读取当前单元格的值
String cellValue = cells[k].getContents();
// sb.append(cellValue + "\t");
// 向控制台输出信息
System.out.println(cellValue);
}
}
sb.append("\r\n");
}
sb.append("\r\n");
}
}
// 最后关闭资源,释放内存
wb.close();
return sb.toString();
}
/**
* 生成一个Excel文件
*
* @param fileName
* 要生成的Excel文件名
*/
public static void writeExcel(String fileName) {
WritableWorkbook wwb = null;
try {
// 首先要使用Workbook类的工厂方法创建一个可写入的工作薄(Workbook)对象
wwb = Workbook.createWorkbook(new File(fileName));
} catch (IOException e) {
e.printStackTrace();
}
if (wwb != null) {
// 创建一个可写入的工作表
// Workbook的createSheet方法有两个参数,第一个是工作表的名称,第二个是工作表在工作薄中的位置
WritableSheet ws = wwb.createSheet("sheet1", 0);
// 下面开始添加单元格
for (int i = 0; i < 10; i++) {
for (int j = 0; j < 5; j++) {
// 这里需要注意的是,在Excel中,第一个参数表示列,第二个表示行
Label labelC = new Label(j, i, "这是第" + (i + 1) + "行,第"
+ (j + 1) + "列");
try {
// 将生成的单元格添加到工作表中
ws.addCell(labelC);
} catch (RowsExceededException e) {
e.printStackTrace();
} catch (WriteException e) {
e.printStackTrace();
}
}
}
try {
// 从内存中写入文件中
wwb.write();
// 关闭资源,释放内存
wwb.close();
} catch (IOException e) {
e.printStackTrace();
} catch (WriteException e) {
e.printStackTrace();
}
}
}
// 测试读取Excel文件
// ExcelUtils.readExcel("C:/xx.xls");
// // 测试插入图片
// try {
// // 创建一个工作薄
// WritableWorkbook workbook = Workbook.createWorkbook(new File(
// "D:/test1.xls"));
// // 待插入的工作表
// WritableSheet imgsheet = workbook.createSheet("Images", 0);
// // 要插入的图片
// File imgFile = new File("D:/1285748103156_000.png");
// insertImg(imgsheet, 0, 1, 6, 6, imgFile);
// // 将图片插入Excel文件中
// workbook.write();
// workbook.close();
// } catch (IOException e) {
// e.printStackTrace();
// } catch (WriteException e) {
// e.printStackTrace();
// }
// 测试生成Excel文件
ExcelUtils.writeExcel("e:/test.xls");
}
分享到:
相关推荐
个人总结的Java操作excel的技术,代码详细,包含jar引入
### Java操作Excel表格经典案例分析 #### 一、引言 在日常办公环境中,Microsoft Office套件中的Excel因其强大的数据处理能力而被广泛使用。在Java编程领域,开发者经常需要处理Excel文件,如批量导入导出数据、...
### Java操作Excel教程详解 #### 一、POI简介与背景 **Jakarta POI** 是Apache的一个子项目,它的主要目标是处理OLE2对象。POI提供了一组用于操作Microsoft Office文件(如Word和Excel)的Java API。其中,**HSSF*...
下面是关于Java操作Excel文件的知识点总结: 一、读取Excel文件内容 在Java中,读取Excel文件内容可以使用jxl.jar这个开源的库。首先需要下载jxl.jar文件,并将其添加到项目的classpath中。然后,使用Workbook....
Java操作Excel是一项常见的任务,特别是在数据处理和报告生成中。JExcelApi是一个强大的库,它允许Java开发者读取、写入以及修改Excel文件,而无需依赖Microsoft Office套件。这个工具因其易用性和广泛的功能而备受...
总结来说,Java操作Excel主要依赖于Apache POI库,通过它可以方便地创建、修改和读取Excel文件。这个工具类可以帮助开发者高效地处理大量数据,实现数据的导入导出,极大地提升了工作效率。在开发过程中,需要注意...
### Java操作Excel类详解 在IT领域,尤其是企业级应用开发中,处理Excel文件是常见的需求之一。Java作为广泛使用的编程语言,提供了多种库来实现对Excel文件的读写操作,其中较为流行的有Apache POI和JExcelAPI...
总结来说,jxl.jar库是Java操作Excel的一个实用工具,它提供了丰富的API来读取、修改和创建Excel文件。通过熟练掌握这个库,开发者可以方便地在Java应用程序中集成Excel相关的功能,进行数据处理和报告生成等工作。...
总结,本示例"java操作excel表格的demo"主要涵盖了使用Apache POI库进行Java编程时,对Excel文件的读取、写入和复杂操作。通过实践这个示例,开发者能够掌握在Java环境下处理Excel文件的基本技能,这对于数据处理和...
总结来说,"java操作excel的api"涉及了Java编程中处理Excel文件的关键技术,包括使用Apache POI库进行Sheet、Row、Cell的管理,以及样式和格式的设置。开发者可以根据具体需求选择使用Apache POI或JExcelAPI,尽管...
Java操作Excel是Java开发中的...总结一下,Java操作Excel主要依赖Apache POI和JXL库。Apache POI功能更强大,支持XLSX格式,而JXL则适用于处理XLS文件。了解并熟练运用这两个库,将使你在处理Excel数据时更加得心应手。
总结来说,完成"java操作数据库导出excel"的任务,你需要掌握以下关键点: 1. 使用JDBC连接数据库,执行SQL查询。 2. 处理ResultSet,获取查询结果。 3. 引入Apache POI库,创建Excel工作簿和工作表。 4. 将数据库...
本知识点将深入探讨如何使用Java操作Excel表格,并重点介绍相关jar包的使用。 Excel表格主要有两种格式:老版的.BIFF格式(通常为.XLS)和较新的.OpenXML格式(通常是.XLSX)。在Java中,处理这两种格式通常需要...
总结,Java读取Excel并进行数据库建库建表及生成Java实体的过程涉及了Apache POI库的使用、数据库操作和源代码生成。理解这些步骤可以帮助你有效地处理类似的任务,提高开发效率。在实际应用中,你还需要考虑错误...
首先,我们需要一个库来操作Excel,Apache POI是一个广泛使用的开源Java API,专门用于读写Microsoft Office格式的文件,包括Excel。使用Apache POI,我们可以创建、修改和读取Excel文件。安装POI库后,我们就可以...
在Java编程中,操作Excel文件是一项常见的任务,特别是在数据分析、报表生成或数据导入导出等场景。Java Excel API(通常指的是jxl库)提供了一种简单的方式来读取和写入Excel文件,支持.xls格式(Excel 2003及之前...
### Java操作Excel解决方案 #### 一、概述 在日常开发工作中,经常需要处理Excel文件,尤其是在企业级应用中。为了方便地实现Excel的导入导出功能,本文将介绍如何使用Apache POI库来操作Excel文件。Apache POI是...