Oo ' Smiling on Java ' oO
從夢里回來,依然記得夢里有你...
BlogJava
::
首頁
::
新隨筆
::
聯系
::
聚合
::
管理
::
8 隨筆 :: 0 文章 :: 10 評論 :: 0 Trackbacks
<
2007年12月
>
日
一
二
三
四
五
六
25
26
27
28
29
30
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
31
1
2
3
4
5
常用鏈接
我的隨筆
我的評論
我的參與
最新評論
留言簿
(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
搜索
積分與排名
積分 - 12686
排名 - 2172
最新隨筆
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返回記錄數(7929)
2.?poi讀excel(2228)
3.?下載FTP服務器文件到本地(560)
4.?Spring網站學習資源,很不錯的 (520)
5.?Lucene/Heritrix/Nutch Site(326)
評論排行榜
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
閱讀(2228)
評論(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新聞
Chat2DB
C++博客
博問
管理
相關文章:
下載FTP服務器文件到本地
poi讀excel
Powered by:
BlogJava
Copyright © Jwin
主站蜘蛛池模板:
金堂县
|
闽侯县
|
永新县
|
桃园县
|
卓资县
|
白沙
|
南充市
|
抚宁县
|
永济市
|
神农架林区
|
景谷
|
朝阳县
|
彭泽县
|
韶山市
|
祁东县
|
平和县
|
会昌县
|
文成县
|
宁武县
|
房产
|
泽普县
|
怀来县
|
长海县
|
连山
|
同仁县
|
中山市
|
侯马市
|
廉江市
|
北宁市
|
淅川县
|
焉耆
|
墨竹工卡县
|
雷山县
|
兰西县
|
神农架林区
|
通许县
|
芒康县
|
嘉峪关市
|
永嘉县
|
招远市
|
江陵县
|