Java代碼導入導出 Excel 表格最簡單的方法


import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;

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 Excel {
    
    public static void main(String[] args) {
        deriveTable();
        importTable();
    }
        //    導出Excel表格的方法    
    public static void deriveTable(){
        // 創建Excel文件對應的對象
        HSSFWorkbook hwk = new HSSFWorkbook();
        // 創建一個sheet表名
        HSSFSheet hssfSheet = hwk.createSheet("工作賬單");        
        // 通過sheet創建一盒row(行) 范圍0-65535
        HSSFRow hssfRow1 = hssfSheet.createRow(0);
        HSSFRow hssfRow2 = hssfSheet.createRow(1);
        HSSFRow hssfRow3= hssfSheet.createRow(2);
        HSSFRow hssfRow4= hssfSheet.createRow(3);
        HSSFRow hssfRow5 = hssfSheet.createRow(4);
        //通過row創建一個cell 一個cell就是一個單元格 范圍0-255
        HSSFCell cell1 = hssfRow1.createCell(0);
        HSSFCell cell2 = hssfRow1.createCell(1);
        HSSFCell cell3 = hssfRow1.createCell(2);
        HSSFCell cell4 = hssfRow2.createCell(1);
        HSSFCell cell5 = hssfRow2.createCell(2);
        HSSFCell cell6 = hssfRow3.createCell(0);
        HSSFCell cell7 = hssfRow3.createCell(2);
        HSSFCell cell8 = hssfRow3.createCell(3);
        HSSFCell cell9 = hssfRow4.createCell(3);
        HSSFCell cell10 = hssfRow4.createCell(4);
        // 給單元格里寫入類容
        cell1.setCellValue("第1行第1列");
        cell2.setCellValue("第1行第2列");
        cell3.setCellValue("第1行第3列");
        cell4.setCellValue("第2行第2列");
        cell5.setCellValue("第2行第3列");
        cell6.setCellValue("第3行第1列");
        cell7.setCellValue("第3行第3列");
        cell8.setCellValue("第3行第4列");
        cell9.setCellValue("第4行第4列");
        cell10.setCellValue("第4行第5列");
        FileOutputStream fos=null;
        try {
            fos = new FileOutputStream("e:/Excel.xls");
            hwk.write(fos);    
        } catch (FileNotFoundException e) {
            e.printStackTrace();
        } catch (IOException e) {
            e.printStackTrace();
        }finally{
            try {
                fos.close();
            } catch (IOException e) {
                e.printStackTrace();
            }
        }    
    }
        //    導入Excel表格的方法    
    public static void  importTable(){
        
        FileInputStream fis = null;
        try {
         fis = new FileInputStream("e:/Excel.xls");
        } catch (FileNotFoundException e) {
            e.printStackTrace();
        }
        try {
            HSSFWorkbook hwk = new HSSFWorkbook(fis);
            HSSFSheet sheet = hwk.getSheetAt(0);
            //遍歷表格中所有的行 sheet.getLastCellNum 是獲取最后一個不為空的行是第幾個。 
            for (int i = 0; i<sheet.getLastRowNum(); i++) {
                if(sheet.getRow(i)==null){
                    continue;
                }
                
                //遍歷表格中所有的單元格 sheet.getRow(i).getLastCellNum() 是獲取最后一個不為空的列是第幾個。 
                
                for (int j = 0; j<sheet.getRow(i).getLastCellNum() ; j++) {
                    if(sheet.getRow(i).getCell(j)==null){
                        continue;
                    }
                    System.out.println(sheet.getRow(i).getCell(j).getStringCellValue());    
                }
                System.out.println();
            }
        } catch (IOException e) {
            e.printStackTrace();
        }finally{
            try {
                fis.close();
            } catch (IOException e) {
                e.printStackTrace();
            }
        }    
    }
}

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM