Java的poi技術讀取和匯入Excel簡單例項
專案結構:
用到的Excel檔案:
XlsMain .java 類
//該類有main方法,主要負責執行程式,同時該類中也包含了用poi讀取Excel(2003版)
- import java.io.FileInputStream;
- import java.io.IOException;
- import java.io.InputStream;
- import java.util.ArrayList;
- 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;
- /**
- *
- * @author Hongten</br>
- *
- * 參考地址:http://hao0610.iteye.com/blog/1160678
- *
- */
- publicclass XlsMain {
- publicstaticvoid main(String[] args) throws IOException {
- XlsMain xlsMain =
new XlsMain();- XlsDto xls = null;
- List<XlsDto> list = xlsMain.readXls();
- try {
- XlsDto2Excel.xlsDto2Excel(list);
- } catch (Exception e) {
- e.printStackTrace();
- }
- for (int i = 0; i < list.size(); i++) {
- xls = (XlsDto) list.get(i);
- System.out.println(xls.getXh() + " " + xls.getXm() + " "
- + xls.getYxsmc() + " " + xls.getKcm() + " "
- + xls.getCj());
- }
- }
- /**
- * 讀取xls檔案內容
- *
- * @return List<XlsDto>物件
- * @throws IOException
- * 輸入/輸出(i/o)異常
- */
- private List<XlsDto> readXls() throws IOException {
- InputStream is = new FileInputStream("pldrxkxxmb.xls");
- HSSFWorkbook hssfWorkbook = new HSSFWorkbook(is);
- XlsDto xlsDto = null;
- List<XlsDto> list = new ArrayList<XlsDto>();
- // 迴圈工作表Sheet
- for (int numSheet = 0; numSheet < hssfWorkbook.getNumberOfSheets(); numSheet++) {
- HSSFSheet hssfSheet = hssfWorkbook.getSheetAt(numSheet);
- if (hssfSheet == null) {
- continue;
- }
- // 迴圈行Row
- for (int rowNum = 1; rowNum <= hssfSheet.getLastRowNum(); rowNum++) {
- HSSFRow hssfRow = hssfSheet.getRow(rowNum);
- if (hssfRow == null) {
- continue;
- }
- xlsDto = new XlsDto();
- // 迴圈列Cell
- // 0學號 1姓名 2學院 3課程名 4 成績
- // for (int cellNum = 0; cellNum <=4; cellNum++) {
- HSSFCell xh = hssfRow.getCell(0);
- if (xh == null) {
- continue;
- }
- xlsDto.setXh(getValue(xh));
- HSSFCell xm = hssfRow.getCell(1);
- if (xm == null) {
- continue;
- }
- xlsDto.setXm(getValue(xm));
- HSSFCell yxsmc = hssfRow.getCell(2);
- if (yxsmc == null) {
- continue;
- }
- xlsDto.setYxsmc(getValue(yxsmc));
- HSSFCell kcm = hssfRow.getCell(3);
- if (kcm == null) {
- continue;
- }
- xlsDto.setKcm(getValue(kcm));
- HSSFCell cj = hssfRow.getCell(4);
- if (cj == null) {
- continue;
- }
- xlsDto.setCj(Float.parseFloat(getValue(cj)));
- list.add(xlsDto);
- }
- }
- return list;
- }
- /**
- * 得到Excel表中的值
- *
- * @param hssfCell
- * Excel中的每一個格子
- * @return Excel中每一個格子中的值
- */
- @SuppressWarnings("static-access")
- private String getValue(HSSFCell hssfCell) {
- if (hssfCell.getCellType() == hssfCell.CELL_TYPE_BOOLEAN) {
- // 返回布林型別的值
- return String.valueOf(hssfCell.getBooleanCellValue());
- } elseif (hssfCell.getCellType() == hssfCell.CELL_TYPE_NUMERIC) {
- // 返回數值型別的值
- return String.valueOf(hssfCell.getNumericCellValue());
- } else {
- // 返回字串型別的值
- return String.valueOf(hssfCell.getStringCellValue());
- }
- }
- }
XlsDto2Excel.java類
//該類主要負責向Excel(2003版)中插入資料
- import java.io.FileOutputStream;
- import java.io.OutputStream;
- import java.util.List;
- import org.apache.poi.hssf.usermodel.HSSFCell;
- import org.apache.poi.hssf.usermodel.HSSFRichTextString;
- import org.apache.poi.hssf.usermodel.HSSFRow;
- import org.apache.poi.hssf.usermodel.HSSFSheet;
- import org.apache.poi.hssf.usermodel.HSSFWorkbook;
- publicclass XlsDto2Excel {
- /**
- *
- * @param xls
- * XlsDto實體類的一個物件
- * @throws Exception
- * 在匯入Excel的過程中丟擲異常
- */
- publicstaticvoid xlsDto2Excel(List<XlsDto> xls) throws Exception {
- // 獲取總列數
- int CountColumnNum = xls.size();
相關推薦
Java的poi技術讀取和匯入Excel簡單例項
專案結構: 用到的Excel檔案: XlsMain .java 類 //該類有main方法,主要負責執行程式,同時該類中也包含了用poi讀取Excel(2003版) import java.io.FileInputStream; import java.io.
java後端匯入excel模板和匯入excel檔案去讀資料
模板轉載地址:https://www.cnblogs.com/zhangyangtao/p/9802948.html 直接上程式碼(我是基於ssm寫的demo,匯入檔案目前只能讀取.xls字尾的excel檔案) 1 <!--匯入的核心依賴--> 2 <depende
【JEECG技術博文】JEECG 簡單例項講解許可權控制
JEECG簡單例項講解許可權控制作者: 許國傑一、業務背景 某公司要實現一個日誌系統,用來了解員工的工作量飽和情況。二、需求 1、角色分為:員工、經理兩種。 2、員工每天在日誌系統中填報工作總結,然後經理進行點評。 3、表
棧和佇列的簡單例項
棧 import java.util.Stack; public class StackClass { public static void main(String[] args)
python讀取和生成excel檔案
1.用python讀取csv檔案: csv是逗號分隔符格式 一般我們用的execl生成的格式是xls和xlsx 直接重新命名為csv的話會報錯: Error: line contains NULL byte 解決方案:出錯原因是直接是把字尾為xls的execl檔案重新命名為csv的 正常的要
Python讀取和寫入Excel檔案
製作Excel表 常用方法說明 Workbook類 Workbook類建立一個XlswWrite的Workbook物件,相當於建立一個excel表 And_worksheet()用來建立工作表,預設為sheet1 Add_format():建立一個新的格式物件來格式化單元格,例如bold=
Python讀取和寫入Excel文件
col mil cal 新的 ima 單元格 nbsp src 默認 制作Excel表 常用方法說明 Workbook類 Workbook類創建一個XlswWrite的Workbook對象,相當於創建一個excel表 And_worksheet()用來創建工作表,默認為
Java讀取和解析Excel資料:基於Apache POI(二)
Java讀取和解析Excel資料:基於Apache POI(二) 假設附錄1文章中的test.xls是對員工的考勤記錄表。需要根據這張excel表統計員工的加班時間,那麼需要重點關注第五列的下班時候的打卡記錄時間。我寫一個Java程式,根據附錄1中那樣的excel表中的下班打卡時間統計員工在
C#中NPOI操作excel之讀取和寫入excel數
一、下載引用 下載需要引用的dll,即:NPOI.dll,NPOI.OOXML.dll,NPOI.OpenXml4Net.dll,ICSharpCode.SharpZipLib.dll(offic
Python3 讀取和寫入excel xlsx檔案 使用openpyxl
python處理excel已經有大量包,主流代表有:•xlwings:簡單強大,可替代VBA•openpyxl:簡單易用,功能廣泛•pandas:使用需要結合其他庫,資料處理是pandas立身之本•win32com:不僅僅是excel,可以處理office;不過它相當於是 w
phoenix-4.7.0:DataFrame讀取和匯入到Hbase (apache版本)
phoenix-4.7.0安裝 1、首先去官網下載Phoenix的壓縮包 下載地址:http://mirror.bit.edu.cn/apache/phoenix/ 由於我們系統的Hbase版本是1.1版本的,故下載4.7版本的Phoeni
【JEECG技術博文】JEECG簡單例項講解自定義表單功能
JEECG簡單例項講解自定義表單功能一、自定義表單功能簡介 自定義表單是JEECG智慧開發平臺開發的一套視覺化的表單設計功能,基於ueditor實現,bootstrap樣式風格。 總體來講,
如何用pandas讀取和匯入csv資料檔案
我們利用python進行資料分析時,pandas中的DataFrame資料結構是最基本最常用的,因此本文將說明如何利用pandas中的方法讀取csv檔案中的資料,以及如何把DataFrame物件的資料匯入到csv檔案中儲存。 關於匯入資料,可以直
NPOI匯出和匯入Excel,Word和PDF
Models資料夾 NPOIModel.cs namespace NPOItest.Models { using System; using System.Data.Entity; using System.ComponentMo
AOP技術應用和研究--AOP簡單應用
為了更好的理解AOP實踐和體現AOP的優勢,我們始終將OOP和AOP的比較貫穿到下文中。並在最終總結出AOP與OOP相比所擁有的優點,AOP的缺點以及AOP一般的使用場景。 1.1 問題空間到解空間的對映 在比較研究OOP和AOP實踐之前,先讓解決從
使用JAVA讀取和寫入EXCEL檔案
首先要下載 poi包和jxl包 讀取部分: import java.io.BufferedInputStream; import java.io.File; import java.io.FileInputStream; import java.io.FileNot
Python讀取和寫入Excel檔案[整]
學習用Python處理Excel檔案,這裡主要用xlrd和xlwt模組,用前需要安裝!本文是來自幾篇部落格和官網tutorial的整理,主要是一個入門。更多的處理Excel的方法請到官網學習,連結為: 另外,幾篇部落格的參考資料: A:Excel資料的型
C#委託和事件的簡單例項
# 委託 C#裡這個委託我的理解是可以看成是一個**方法模板的型別**。(不過並沒有找到相關的理解 比如有幾個返回值,引數列表型別相同的方法,就能用同個模板型別來表示,然後例項化一個委託型別就繫結上一個或多個方法,然後就可以一次呼叫這多個方法,相當於把方法物件化?。 ```c# using System; n
Apache POI讀取和創建Excel ----01(簡單操作)
學習記錄public class ExcelCreatAndRead { /** * 使用Apache POI創建Excel文檔 * */ public static void createXL(){ /**Excel文件要存放的位置,假定在D盤下*/
簡單搜索--Paddle Mobile的技術實現和業務落地
program mar 不一致 用戶 研發 基礎 RoCE 有關 fff Paddle Mobile是PaddlePaddle組織下的致力於嵌入式平臺的深度學習框架,集成了百度移動端預測的實踐經驗,提供多平臺支持,在工程實現支持及底層算法模型壓縮的基礎上,通過CPU、mal