使用poi對Excel表的寫入修改,再匯出
阿新 • • 發佈:2019-02-09
本文介紹將一個Excel檔案上傳後,修改Excel表中資料,再從新寫入到新的Excel表
1.使用myeclipse建立web工程,
2.新增struts2 使用struts2的分裝工具將檔案 上傳
3.匯入poi-3.0.2-FINAL-20080204.jar
4.Excel的操作
try { //傳入的檔案 FileInputStream fileInput = new FileInputStream(file); //poi包下的類讀取excel檔案 POIFSFileSystem ts = new POIFSFileSystem(fileInput); // 建立一個webbook,對應一個Excel檔案 HSSFWorkbook workbook = new HSSFWorkbook(ts); //對應Excel檔案中的sheet,0代表第一個 HSSFSheet sh = workbook.getSheetAt(0); //修改excle表的第5行資料 for(int i=2;i<19;i++){ //對第五行的資料修改 sh.getRow(4).getCell((short)i).setCellValue(100210+i); } //將修改後的檔案寫出到D:\\excel目錄下 FileOutputStream os = new FileOutputStream("D:\\excel\\輔機1.xls"); os.flush(); //將Excel寫出 workbook.write(os); //關閉流 fileInput.close(); os.close(); } catch (IOException e) { e.printStackTrace(); }
5 struts配置
<struts> <package name="upload" extends="struts-default"> <action name="upFile" class="excelAction.Excel"> <!-- 上傳成功後跳轉到success.jsp頁面 --> <result name="success">/sucess.jsp</result> <result name="error">/error.jsp</result> </action> </package> </struts>
6.ExcelAction
private File upload; private String uploadContentType; private String uploadFileName; public File getUpload() { return upload; } public void setUpload(File upload) { this.upload = upload; } public String getUploadContentType() { return uploadContentType; } public void setUploadContentType(String uploadContentType) { this.uploadContentType = uploadContentType; } public String getUploadFileName() { return uploadFileName; } public void setUploadFileName(String uploadFileName) { this.uploadFileName = uploadFileName; } public String execute() throws Exception { FileUpload.upload(upload,uploadContentType,uploadFileName); return SUCCESS; }
7.jsp頁面(form必須新增enctype="multipart/form-data"
<form action="${pageContext.request.contextPath }/upFile.action" enctype="multipart/form-data" method="post">
檔案:<input type="file" name="upload"/><br/>
<input type="submit" value="Excel">"
</form>
本文介紹將一個Excel檔案上傳後,修改Excel表中資料,再從新寫入到新的Excel表
需要java學習的資料,搜尋微信公眾號javamy012