上班的時候公司要求做乙個從網頁上匯入excel,研究了半天後,開始著手去實現它。
思路很簡單:
1、做乙個jsp頁面,頁面包括瀏覽檔案,提交檔案
2、將excel檔案上傳到伺服器
3、 伺服器對該excel檔案進行讀出
4、 將excel檔案內容顯示到頁面上
環境搭建:
需要準備的包:commons-fileupload-1.2.1.jar & commons-io-1.3.2.jar 這兩個包是上傳用的
一、jsp頁面
注意:1、在jsp頁面的form要使用html本身的標記,而不要使用第三方檢視開源框架的form標記,例如不要使用strut的。
2、在的屬性裡必須加上 enctype="multipart/form-data"
匯入excelh1>
action="importexcel"
method="post"
enctype="multipart/form-data">
type="file"
name="importexcel"
id="importexcel">
type="submit"
value="匯入">
form>
二、上傳excel的servlet
注意:1、匯入的excel最好用字尾為.xls,如果用.xlsx可能會導不進去。
2、在呼叫fileitem的write方法前必須保證檔案的存放路徑存在否則出現異常。commons fileupload不會自動為你建立不存在的目錄。
3、上傳後會對檔案進行重新命名,以時間為檔名進行命名
; //格式化日期 ******dateformat format = new ******dateformat("yyyymmddhhmmsssss"); @override
throws servletexception, ioexception catch (fileuploadexception e1) // 依次處理每個上傳的檔案 iterator iter = fileitems.iterator(); system.out.println("fileitems的大小是" + fileitems.size()); // 正則匹配,過濾路徑取檔名 string regexp = ".+\\\\(.+)$"; pattern p = pattern.compile(regexp); while (iter.hasnext()) } if(!flag) try catch (exception e) } } else } } @override
()throws servletexception } }三、讀出excel檔案內容的類
public
class
readexcel
out.println("
"); } //關閉檔案 book.close(); } catch (biffexception e) catch (ioexception e) } }
總結:上面只是乙個很簡單的匯入excel檔案的例子,如果想做完善還得下更多的功夫。在做的過程中如果出現workbook打不開,請更換jxl版本,盡量用低版本,這樣與jdk相容會好點,我在做這個匯入excel的時候,就遇到了版本相容問題,處理了半天才發現問題所在。所以想做這個例子給大家參考,以後不要犯和我同樣的錯誤。o(∩_∩)o哈哈~
再分享一下我老師大神的人工智慧教程吧。零基礎!通俗易懂!風趣幽默!還帶黃段子!希望你也加入到我們人工智慧的隊伍中來!
上班的時候公司要求做乙個從網頁上匯入excel,研究了半天後,開始著手去實現它。
思路很簡單:
1、做乙個jsp頁面,頁面包括瀏覽檔案,提交檔案
2、將excel檔案上傳到伺服器
3、 伺服器對該excel檔案進行讀出
4、 將excel檔案內容顯示到頁面上
環境搭建:
需要準備的包:commons-fileupload-1.2.1.jar & commons-io-1.3.2.jar 這兩個包是上傳用的
一、jsp頁面
注意:1、在jsp頁面的form要使用html本身的標記,而不要使用第三方檢視開源框架的form標記,例如不要使用strut的。
2、在的屬性裡必須加上 enctype="multipart/form-data"
匯入excelh1>
action="importexcel"
method="post"
enctype="multipart/form-data">
type="file"
name="importexcel"
id="importexcel">
type="submit"
value="匯入">
form>
二、上傳excel的servlet
注意:1、匯入的excel最好用字尾為.xls,如果用.xlsx可能會導不進去。
2、在呼叫fileitem的write方法前必須保證檔案的存放路徑存在否則出現異常。commons fileupload不會自動為你建立不存在的目錄。
3、上傳後會對檔案進行重新命名,以時間為檔名進行命名
; //格式化日期 ******dateformat format = new ******dateformat("yyyymmddhhmmsssss"); @override
throws servletexception, ioexception catch (fileuploadexception e1) // 依次處理每個上傳的檔案 iterator iter = fileitems.iterator(); system.out.println("fileitems的大小是" + fileitems.size()); // 正則匹配,過濾路徑取檔名 string regexp = ".+\\\\(.+)$"; pattern p = pattern.compile(regexp); while (iter.hasnext()) } if(!flag) try catch (exception e) } } else } } @override
()throws servletexception } }三、讀出excel檔案內容的類
public
class
readexcel
out.println("
"); } //關閉檔案 book.close(); } catch (biffexception e) catch (ioexception e) } }
總結:上面只是乙個很簡單的匯入excel檔案的例子,如果想做完善還得下更多的功夫。在做的過程中如果出現workbook打不開,請更換jxl版本,盡量用低版本,這樣與jdk相容會好點,我在做這個匯入excel的時候,就遇到了版本相容問題,處理了半天才發現問題所在。所以想做這個例子給大家參考,以後不要犯和我同樣的錯誤。o(∩_∩)o哈哈~
JAVA實現Excel匯入匯出
建立工程匯入jar包 jxl建立excel檔案 author c public class jxlexpexcel 建立excel檔案 file file new file jxl test.xls try 追加資料 for int i 1 i 10 i 寫入資料 workbook.write wo...
java實現excel的匯入匯出
最進接觸到excel匯入匯出。可以使用poi.jar實現。下面是乙個hello word import org.apache.poi.hssf.usermodel.hssfcell import org.apache.poi.hssf.usermodel.hssfrow import org.apa...
java實現excel的匯入匯出
最進接觸到excel匯入匯出。可以使用poi.jar實現。下面是乙個hello word import org.apache.poi.hssf.usermodel.hssfcell import org.apache.poi.hssf.usermodel.hssfrow import org.apa...