excel的java处理方式
—apache开源项目之poi
poi即poor object interface之意,是poi项目组对微软封闭的office文件格式(接口)的称谓!
其中提供了对word和excel的java接口,用法非常简单,并且是完全免费的,对中文的支持也相当不错,下面是处理excel一个简单的实例:
package test;
import java.io.*;
import org.apache.poi.hssf.usermodel.*;
import org.apache.poi.poifs.filesystem.poifsfilesystem;
public class test {
public static void main(string[] args) {
try {
/**************创建一个xls文档*************/
hssfworkbook wb = new hssfworkbook();
fileoutputstream fileout = new fileoutputstream("workbook.xls");
hssfsheet sheet = wb.createsheet("new sheet");
hssfrow row = sheet.createrow((short)0);
hssfcell cell = row.createcell((short)0);
row.createcell((short)1);
row.createcell((short)2);
row.createcell((short)3);
row.createcell((short)4);
row.createcell((short)5);
cell.setcellvalue("test_write!");
wb.write(fileout);
fileout.close();
/*************读取并修改xls文档***************/
poifsfilesystem pfs=new poifsfilesystem(new fileinputstream("workbook.xls"));
hssfworkbook hwb=new hssfworkbook(pfs);
hssfsheet hs=hwb.getsheetat(0);
hssfrow hr=hs.getrow(0);
hssfcellstyle style=hwb.createcellstyle();
style.setalignment(style.align_center);
hssffont hf=hwb.createfont();
hf.setfontname("楷体_gb2312");
style.setfont(hf);
hssfcell cl=hr.getcell((short)2);
cl.setencoding(cl.encoding_utf_16);
cl.setcellstyle(style);
cl.setcellvalue("test_modify! 测试\u2014\u2014编辑!");
fileoutputstream fos=new fileoutputstream("workbook.xls");
hwb.write(fos);
fos.flush();
fos.close();
}
catch (exception ex) {
ex.printstacktrace();
}
}
}
