Oo ' Smiling on Java ' oO
从梦里回来,依然记得梦里有你...
BlogJava
::
首页
::
新随笔
::
联系
::
聚合
::
管理
::
8 随笔 :: 0 文章 :: 10 评论 :: 0 Trackbacks
<
2016年6月
>
日
一
二
三
四
五
六
29
30
31
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
1
2
3
4
5
6
7
8
9
常用链接
我的随笔
我的评论
我的参与
最新评论
留言簿
(1)
给我留言
查看公开留言
查看私人留言
随笔分类
ioOpr(2)
(rss)
JDBC(1)
(rss)
NHibernate
(rss)
Oracle
(rss)
Struts&Spring&Hibernate(1)
(rss)
生活的瞬间(3)
(rss)
随笔档案
2008年9月 (1)
2007年12月 (2)
2006年11月 (5)
收藏夹
我的收藏(4)
(rss)
Bloggers'
Beansoft
BlueDavy
Vip01
曹晓钢
马嘉楠
Learning...
Java爱好者
J道.JDon
Programme
Spring和Struts整合
theserverside
当前的网站设计风格
报表制作
Search Engine
My Own Search Engine
搜索
积分与排名
积分 - 12552
排名 - 2169
最新随笔
1. Lucene/Heritrix/Nutch Site
2. 下载FTP服务器文件到本地
3. poi读excel
4. 一生的35个好习惯(转)
5. Spring网站学习资源,很不错的
6. 获得ResultSet返回记录数
7. 代码规范了
8. 终于安家落户了
最新评论
1. re: poi读excel
评论内容较长,点击标题查看
--Mary james
2. re: 获得ResultSet返回记录数
int totalRows = rs.getLong("total");
类型就不对,你试过吗?不懂不要瞎说
--douboer
3. re: 获得ResultSet返回记录数
评论内容较长,点击标题查看
--furong
4. re: 获得ResultSet返回记录数
好象不能显示,,你自己试试看,,
--wyp
5. re: 获得ResultSet返回记录数
rs.getLong("total"); 可以吗?
--jasonu
阅读排行榜
1. 获得ResultSet返回记录数(7913)
2. poi读excel(2220)
3. 下载FTP服务器文件到本地(541)
4. Spring网站学习资源,很不错的 (507)
5. Lucene/Heritrix/Nutch Site(315)
评论排行榜
1. 获得ResultSet返回记录数(9)
2. poi读excel(1)
3. 一生的35个好习惯(转)(0)
4. Spring网站学习资源,很不错的 (0)
5. Lucene/Heritrix/Nutch Site(0)
poi读excel
试试用POI操作excel囖.
纯粹为了自己好找.
要有人看了这些的话,随意就好啦...欢迎指出不当之处.
package
xls;
import
java.io.FileInputStream;
import
java.io.FileNotFoundException;
import
java.io.FileOutputStream;
import
java.io.IOException;
import
java.io.OutputStreamWriter;
import
java.io.UnsupportedEncodingException;
import
java.text.SimpleDateFormat;
import
java.util.ArrayList;
import
java.util.Date;
import
java.util.List;
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;
public
class
ReadXL
{
public
static
String fileName
=
"
C:\\xls\\EXCEL.xls
"
;
public
static
String path
=
"
C:\\xls\\
"
;
//
为方便,就这样写了.
public
static
void
main(String argv[])
{
List list
=
readExcel();
String xmldata
=
buildXML(list);
createXMLFile(xmldata);
}
/** */
/**
* 读取磁盘上的EXCEL文件的内容
*
@return
List
*/
public
static
List readExcel()
{
List list
=
null
;
UserBean ub
=
null
;
try
{
HSSFWorkbook workbook
=
new
HSSFWorkbook(
new
FileInputStream(
fileName));
//
得到excel对象
HSSFSheet sheet
=
workbook.getSheetAt(
0
);
//
得到第一个sheet
int
rows
=
sheet.getPhysicalNumberOfRows();
//
得到行数
list
=
new
ArrayList();
for
(
int
i
=
1
; i
<
rows; i
++
)
{
HSSFRow row
=
sheet.getRow(i);
ub
=
new
UserBean();
HSSFCell cell
=
row.getCell((
short
)
0
);
//
得到列0(下标0,为第一列)
ub.setName(cell.getStringCellValue());
cell
=
row.getCell((
short
)
1
);
//
得到列 1
ub.setEmail(cell.getStringCellValue());
cell
=
row.getCell((
short
)
2
);
//
得到列2
ub.setPhone(cell.getStringCellValue());
cell
=
row.getCell((
short
)
3
);
//
得到列3
ub.setPasswd(cell.getStringCellValue());
list.add(ub);
}
return
list;
}
catch
(Exception e)
{
return
null
;
}
}
/** */
/**
* 组装xml格式字符串
*
@param
list List
*
@return
String
*/
public
static
String buildXML(List list)
{
StringBuffer sb
=
new
StringBuffer();
sb.append(
"
<contents-list>\n\t
"
);
sb.append(
"
<content>\n\t\t
"
);
for
(
int
i
=
0
; i
<
list.size(); i
++
)
{
UserBean bean
=
(UserBean) list.get(i);
sb.append(
"
<userinfo>\n\t\t\t
"
);
sb.append(
"
<name>
"
+
bean.getName()
+
"
</name>\n\t\t\t
"
);
sb.append(
"
<email>
"
+
bean.getEmail()
+
"
</email>\n\t\t\t
"
);
sb.append(
"
<phone>
"
+
bean.getPhone()
+
"
</phone>\n\t\t\t
"
);
sb.append(
"
<passwd>
"
+
bean.getPasswd()
+
"
</passwd>\n\t\t
"
);
if
(i
+
1
<
list.size())
{
sb.append(
"
</userinfo>\n\t\t
"
);
}
else
{
sb.append(
"
</userinfo>\n\t
"
);
}
}
sb.append(
"
</content>\n
"
);
sb.append(
"
</contents-list>
"
);
return
sb.toString();
}
/** */
/**
* 输出到文件
*
@param
xmldata String
*/
public
static
void
createXMLFile(String xmldata)
{
String createTime
=
createTime();
String filename
=
path
+
createTime
+
"
.xml
"
;
OutputStreamWriter osw
=
null
;
FileOutputStream output
=
null
;
try
{
output
=
new
FileOutputStream(filename);
osw
=
new
OutputStreamWriter(output,
"
utf-8
"
);
osw.write(xmldata);
osw.flush();
}
catch
(Exception ex)
{
}
finally
{
try
{
if
(
null
!=
output)
{
output.close();
}
}
catch
(IOException ex2)
{
}
try
{
if
(
null
!=
osw)
{
osw.close();
}
}
catch
(IOException ex3)
{
}
}
}
/** */
/**
* 用时间作为文件名
*
@return
String
*/
public
static
String createTime()
{
Date date
=
new
Date();
SimpleDateFormat dateFormat
=
new
SimpleDateFormat(
"
yyyyMMddmmss
"
);
String createTime
=
dateFormat.format(date);
return
createTime;
}
}
再就一个UserBean,就几个属性.
posted on 2007-12-11 23:28
Jwin
阅读(2220)
评论(1)
编辑
收藏
所属分类:
ioOpr
评论
#
re: poi读excel
2016-06-14 23:00
Mary james
thank you for the great tutorial.
I recommend this website:
http://how-to-program-in-java.com/
It was really helpful for me.
回复
更多评论
新用户注册
刷新评论列表
只有注册用户
登录
后才能发表评论。
网站导航:
博客园
IT新闻
知识库
C++博客
博问
管理
相关文章:
下载FTP服务器文件到本地
poi读excel
Powered by:
BlogJava
Copyright © Jwin