此操作使用poi类库,请到以下url下载:
http://apache.justdn.org/jakarta/poi/release/bin/poi-bin-
以下是源码:
package com.test;
import java.io.fileoutputstream;
import org.apache.poi.hssf.usermodel.hssfcell;
import org.apache.poi.hssf.usermodel.hssfrow;
import org.apache.poi.hssf.usermodel.hssfsheet;
import org.apache.poi.hssf.usermodel.hssfworkbook;
import java.io.fileinputstream;
import javax.swing.joptionpane;
/**
* 一个excel文件的层次:excel文件->工作表->行->单元格
* 对应到poi中,为:workbook->sheet->row->cell
*/
public class poitest
{
public static string outputfile = “e:\\test.xls”;
public static string filetoberead = “e:\\test.xls”;
public void createexcel()
{
try
{
// 创建新的excel 工作簿
hssfworkbook workbook = new hssfworkbook();
// 在excel工作簿中建一工作表,其名为缺省值
// 如要新建一名为”效益指标”的工作表,其语句为:
// hssfsheet sheet = workbook.createsheet(“效益指标”);
hssfsheet sheet = workbook.createsheet(“效益指标”);
// 在索引0的位置创建行(最顶端的行)
hssfrow row = sheet.createrow((short)0);
//在索引0的位置创建单元格(左上端)
hssfcell cell = row.createcell((short)0);
// 定义单元格为字符串类型
cell.setcelltype(hssfcell.cell_type_string);
// 在单元格中输入一些内容
cell.setcellvalue(“poi excel model”);
//下一行
row=sheet.createrow( (short)1);
cell=row.createcell( (short)0);
//设置单元格内容
cell.setcellvalue( “powered by 夏天”);
// 新建一输出文件流
fileoutputstream fout = new fileoutputstream(outputfile);
// 把相应的excel 工作簿存盘
workbook.write(fout);
fout.flush();
// 操作结束,关闭文件
fout.close();
system.out.println(“文件生成…”);
}
catch(exception e)
{
system.out.println(“已运行 xlcreate() : ” + e);
}
}
public void readexcel()
{
try
{
// 创建对excel工作簿文件的引用
hssfworkbook workbook = new hssfworkbook(new fileinputstream(filetoberead));
//system.out
// .println(“===sheetsnum===” + workbook.getnumberofsheets());//获取sheet数
for(int numsheets = 0; numsheets < workbook.getnumberofsheets(); numsheets++)
{
if(null != workbook.getsheetat(numsheets))
{
hssfsheet asheet = workbook.getsheetat(numsheets); //获得一个sheet
for(int rownumofsheet = 0; rownumofsheet <= asheet.getlastrownum(); rownumofsheet++)
{
if(null != asheet.getrow(rownumofsheet))
{
hssfrow arow = asheet.getrow(rownumofsheet);
for(short cellnumofrow = 0; cellnumofrow <= arow.getlastcellnum(); cellnumofrow++)
{
if(null != arow.getcell(cellnumofrow))
{
hssfcell acell = arow.getcell(cellnumofrow);
system.out.println(acell.getstringcellvalue());
}
}
}
}
}
}
}
catch(exception e)
{
system.out.println(“readexcelerror” + e);
}
}
public static void main(string[] args)
{
poitest poi = new poitest();
poi.createexcel();
joptionpane.showmessagedialog(null,”文件写入成功”,”poi”,1);
poi.readexcel();
joptionpane.showmessagedialog(null,”文件读取成功”,”poi”,1);
}
}
