最近做了需求,从数据库读取数据,分析处理后生成一个excel文件。
搜了下,有二个库还是比较不错的。Apach的POI功能比较强大些,JXL比较小巧,我选择JXL,不需要那么多的功能。
1.读excel
public void read(){
String org = "D:\\test\\org.xls"
try{
FileInputStream fileInputStream = new FileInputStream(org);
Workbook workbook = Workbook.getWorkbook(fileInputStream);
Sheet sheet = workbook.getSheet(0);
Cell cell = sheet.getCell(2, 3); //参数为:列,行
String content = cell.getContents();
workbook.close();
fileInputStream.close();
}catch(Exception e){
e.printStackTrace();
}
}
Workbook workbook = Workbook.getWorkbook(fileInputStream);// 获取读Excel的类实例
Sheet sheet = Workbook.getSheet(0); 其中0表示sheet表的索引,从0开始,
Cell cell = sheet.getCell(2,3);其中Cell表示一个单元格,参数为:列,行,从0开始,
2.写入excel
public void write(){
try{
FileOutputStream fileOutputStream = new FileOutputStream(path);
WritableWorkbook writableWorkbook = Workbook.createWorkbook(fileOutputStream);
WritableSheet writableSheet = null;
for(int i=0;i<3;i++){
String sheet = "";
if(i ==0){
sheet = "一季度";
}
else if(i ==1){
sheet = "二季度";
}
else if(i ==2){
sheet = "三季度";
}
writableSheet = writableWorkbook.createSheet(sheet, i);
Label label = new Label(1,1, "财务数据");
writableSheet.addCell(label);
}
writableWorkbook.write();
writableWorkbook.close();
fileOutputStream.close();
}catch(Exception e){
e.printStackTrace();
}
}
逻辑:循环创建了3个sheet表,每个表里添加了一个数据。我写的很简单,当然还可以写复杂的。
WritableWorkbook writableWorkbook = Workbook.createWorkbook(fileOutputStream);//创建一个可写的工作簿。
writableSheet = writableWorkbook.createSheet(sheet, i);//创建工作表,参数为: sheet表名称,sheet表索引值。
Label label = new Label(row, col, content);//单元格实例,row行号,col列号,都是从0开始,content为String,单元格内容。
writableSheet.addCell(label);//把单元格加入工作簿
WriteableBook.write();//在最后调用此方法将缓冲写入Excel;
写的简单,但够用实用..............
分享到:
相关推荐
本教程将详细介绍如何在Eclipse中利用Java Excel API进行Excel文件的读取与写入。 首先,你需要了解两个主要的Java库:Apache POI和JExcelAPI。Apache POI是目前最广泛使用的Java Excel API,支持读写Microsoft ...
Java Excel API,通常指的是jxl库,是一个广泛使用的开源Java库,用于读写Microsoft Excel文件。这个库使得在Java程序中处理Excel数据变得极其便捷,无论是读取现有的工作簿、创建新的工作簿,还是修改现有表格,jxl...
### 利用Java Excel API操作Excel #### 一、引言 在企业级应用开发中,Excel文件的处理是一项常见的需求。Java作为一种广泛使用的编程语言,提供了多种库来支持Excel文件的操作,其中最为人所知的是`jxl`和`Apache ...
在本文中,我们将详细介绍基于Java Excel API的excel文件的操纵技术,包括excel文件的读取和写入、excel文件的编辑和格式化、excel文件的打印和导出等内容。此外,我们还将提供一些实用的示例代码,以便读者更好地...
Java Excel API 是一个开源项目,专门用于在Java环境中处理Excel文件。这个API使得开发者无需依赖Windows操作系统,就能在任何平台上创建、读取和修改Excel文件。由于它是用Java编写的,因此非常适合在Web应用程序中...
利用 JXL,可以在任何支持 Java 的操作系统上动态读写 Excel 文件。下面将详细介绍 JXL 的使用方法和相关知识点。 一、JXL 的主页和下载 JXL 的主页是 http://www.andykhan.com/jexcelapi/,可以在这里下载到它的...
JavaExcel API是一个流行的Java库,它允许开发人员在Java应用程序中读取、写入和修改Microsoft...通过掌握以上知识点,你将能够有效地利用JavaExcel API进行Excel文件的处理,无论是简单的数据读取还是复杂的表格操作。
本文将详细介绍如何使用Java来读取Excel文件并进行批量导入到数据库的操作。 首先,我们需要了解两个关键的Java库:Apache POI和JDBC(Java Database Connectivity)。Apache POI是Java中用于处理Microsoft Office...
- **读取Excel文件**:支持.xls和.xlsx两种格式。 - **写入Excel文件**:可以在新的或现有的Excel文件中插入数据。 - **数据处理**:提供了一系列方法来处理单元格、行、列以及工作表。 - **样式设置**:允许设置...
- **读取Excel文件**:JavaExcel API允许开发者轻松地读取Excel工作簿(Workbook)中的数据,包括单元格(Cell)、行(Row)和工作表(Sheet)。你可以获取单元格的值、格式、公式等信息。 - **写入Excel文件**:...
1. **读取Excel文件数据**:API能够从Excel文件中读取内容,包括读取公式(支持Excel 97之后的公式)。 2. **生成Excel文件**:API可以创建新的Excel数据表,格式遵循Excel 97标准。 3. **格式化支持**:支持字体、...
4. **读取类操作**:提供的Java代码示例可能包含一个读取Excel文件的类,这个类通常会通过JXL库打开Excel文件,遍历每个工作表和单元格,读取其中的数据,并可能将其存储到内存中的数据结构(如数组、列表或自定义...
Java Excel 是一开放源码项目,通过它 Java 开发人员可以读取 Excel 文件的内容、创建新的 Excel 文件、更新已经存在的 Excel 文件。使用该 API 非 Windows 操作系统也可以通过纯 Java 应用来处理 Excel 数据表。...
### 利用JAVA操作EXCEL文件的关键知识点 #### 一、JAVA EXCEL API 简介 - **项目背景**:随着Web应用的发展,越来越多的应用场景需要通过Web端操作Excel文件,而传统的CSV文件虽然可以被Excel打开,但无法实现对...
对于读取Excel文件,可以使用`Workbook`的静态方法`Workbook.getWorkbook(File)`。读取数据后,可以通过`Cell`对象的方法获取单元格的值。 除了基本的读写操作,JXL API还支持样式设置(如字体、颜色、边框)、公式...
Java Excel API的最新稳定版本是V2.0,支持多种功能,包括读取Excel 95、97、2000等格式的数据,处理公式的读取,生成Excel 97格式的文件,以及格式化字体、数字和日期,甚至进行单元格的阴影和颜色操作。...
3. JXL 库:JXL 库是指 Java Excel API,即 Java 语言对 Excel 文件的操作 API。 4. Workbook:Workbook 是指 Excel 文件对象,使用 `Workbook` 对象可以获取 Excel 文件的信息。 5. Sheet:Sheet 是指 Excel 文件的...
Java Excel API,如JExcelApi,提供了一个方便的接口来读取、写入和修改Excel文件。本文将全面挖掘Java Excel API的使用方法,帮助开发者更好地理解和应用这个库。 1. **Workbook类**: - `getNumberOfSheets()`:...