Java 使用XSSF使用ApachePOI编写xlsx
有人能给我举一个用Java 使用XSSF使用ApachePOI编写xlsx,java,apache-poi,Java,Apache Poi,有人能给我举一个用XSSF写xlsx文件的例子吗 编辑:啊哈……我自己做的你需要的罐子是- dom4j poi-3.8.jar poi-ooxml-3.8.jar poi-ooxml-schemas-3.8.jar xbean.jar 示例代码- package com.angrydog.impl; import java.io.FileOutputStream; import java.io.IOException; import java.util.Date; import java.ut
XSSF
写xlsx
文件的例子吗
编辑:啊哈……我自己做的你需要的罐子是-
dom4j
poi-3.8.jar
poi-ooxml-3.8.jar
poi-ooxml-schemas-3.8.jar
xbean.jar
示例代码-
package com.angrydog.impl;
import java.io.FileOutputStream;
import java.io.IOException;
import java.util.Date;
import java.util.Enumeration;
import java.util.Iterator;
import java.util.Vector;
import org.apache.poi.xssf.usermodel.XSSFCell;
import org.apache.poi.xssf.usermodel.XSSFRow;
import org.apache.poi.xssf.usermodel.XSSFSheet;
import org.apache.poi.xssf.usermodel.XSSFWorkbook;
public class XSSFWorkBookWriter {
public void writeWorkBook(Vector table) throws WorkBookException {
XSSFWorkbook workBook = new XSSFWorkbook();
XSSFSheet sheet = workBook.createSheet();
table=new Vector();
table.add(new String("Howdy"));
table.add(new java.sql.Date(2012,06,20));
table.add(new Double(13.35D));
table.add(new String("Fine"));
table.add(new java.sql.Date(2012,06,20));
table.add(new Double(13.38D));
Iterator rows=table.iterator();
Enumeration rowsOfVector=table.elements();
int totalNoOfRows=table.size()/2;
int currentRow=0;
while (rows.hasNext () && currentRow<totalNoOfRows){
XSSFRow row = sheet.createRow(currentRow++);
for (int i = 0; i < 3; i++) {
XSSFCell cell=row.createCell(i);
Object val=rows.next();
if( val instanceof String){
cell.setCellValue(val.toString());
}
else if(val instanceof Date){
cell.setCellValue((java.sql.Date)val);
}
else if(val instanceof Double){
cell.setCellValue((Double)val);
}
}
}
FileOutputStream outPutStream = null;
try {
outPutStream = new FileOutputStream("C:\\\\"+"Try.xlsx");
workBook.write(outPutStream);
} catch (IOException e) {
e.printStackTrace();
} finally {
if (outPutStream != null) {
try {
outPutStream.flush();
outPutStream.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
}
public static void main(String[] args) {
XSSFWorkBookWriter bookWriter=new XSSFWorkBookWriter();
try {
bookWriter.writeWorkBook(new Vector());
} catch (WorkBookException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
package com.angrydog.impl;
导入java.io.FileOutputStream;
导入java.io.IOException;
导入java.util.Date;
导入java.util.Enumeration;
导入java.util.Iterator;
导入java.util.Vector;
导入org.apache.poi.xssf.usermodel.XSSFCell;
导入org.apache.poi.xssf.usermodel.XSSFRow;
导入org.apache.poi.xssf.usermodel.xssfheet;
导入org.apache.poi.xssf.usermodel.xssf工作簿;
公共类XSSFWorkBookWriter{
public void writeWorkBook(向量表)引发WorkBookException{
XSSFWorkbook工作簿=新XSSFWorkbook();
XSSFSheet sheet=workBook.createSheet();
表=新向量();
表.添加(新字符串(“Howdy”);
表.add(新java.sql.Date(2012,06,20));
表.增加(新的双(13.35D));
表.添加(新字符串(“精细”));
表.add(新java.sql.Date(2012,06,20));
表.增加(新的双(13.38D));
迭代器行=table.Iterator();
枚举rowsOfVector=table.elements();
int totalNoOfRows=table.size()/2;
int currentRow=0;
while(rows.hasNext()&¤tRow)您可以查看一个示例并对我的问题进行评论:我不知道这是否是您所需要的。您可以查看以下链接中提供的示例/教程,并希望它有所帮助。我将使用更新的版本(撰写本文时为3.17),因为自3.8以来已完成了许多修复和增强。