论坛
门户
内部优惠
喜欢
话题
VIP会员
搜索
新浪微博
登录
注册
100%
100%
首页
>
软件开发
>
java语言
>
JAVA操作Excel的方法-JSP教程,Java技巧及代码
回复
« 返回列表
111111
精灵王
注册日期
2010-12-08
发帖数
640
QQ
火币
1103枚
粉丝
120
关注
75
加关注
写私信
打招呼
阅读:
3432
回复:
0
JAVA操作Excel的方法-JSP教程,Java技巧及代码
楼主
#
更多
只看楼主
倒序阅读
发布于:2011-01-08 20:35
保存
100%
100%
[]
1
此操作使用poi类库,请到以下url下载:
http://apache.justdn.org/jakarta/poi/release/bin/poi-bin-2.5.1-final-20040804.zip
以下是源码:
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);
}
}
更多
黑客
技术
黑客
软件
计算机技术 编程技术 网站技术
qq
技术 IT新闻 黑客基地 请访问 灯火安全联盟 灯火黑客
www.hack8888.com/bbs
喜欢
0
评分
0
最新喜欢:
回复
100%
发帖
回复
« 返回列表
普通帖
您需要登录后才可以回帖,
登录
或者
注册
100%
返回顶部
关闭
最新喜欢