Java実装EXCEL操作(1)

8699 ワード

詳細
Java実装EXCEL操作(1)
1、実現方法:
現在、jxl、poi、FastExcel:97~2003の3つの方法が実現されています.
ここではpoiの実現方法だけを述べる.poiのかばんはApacheの公式サイトに行ってダウンロードすることができます:http://poi.apache.org/download.html
2、poi実現
【1】低バージョンのインポート・エクスポート方法:
jarパッケージをインポートする必要があります.
poi-3.1.5.jar
commons-io-2.2.jar
EXCELの生成:
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;

import org.apache.commons.io.FileUtils;
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 PoiExpExcel {

    /**
     *   Excel  
     */
    public static void main(String[] args) {
        String[] title = {"id", "name", "sex"};
        //     
        HSSFWorkbook workbook = new HSSFWorkbook();
        //       sheet
        HSSFSheet sheet = workbook.createSheet();
        //       
        HSSFRow row = sheet.createRow(0);
        HSSFCell cell = null;
        //       id、name、sex
        for (int i = 0; i < title.length; i++) {
            cell = row.createCell(i);
            cell.setCellValue(title[i]);
            
        }
        //    
        for(int i = 1; i <= 10; i++) {
            HSSFRow nextrow = sheet.createRow(i);
            HSSFCell cell2 = nextrow.createCell(0);
            cell2.setCellValue("" + i);
            cell2 =nextrow.createCell(1);
            cell2.setCellValue("user" + i);
            cell2 =nextrow.createCell(2);
            cell2.setCellValue(" ");
        }
        
        
        //      
        File file =new File("C:/Users/Administrator/Desktop/demo1.xls");  //         
        try {
            file.createNewFile();
            FileOutputStream stream = FileUtils.openOutputStream(file);
            workbook.write(stream);
            
        } catch (Exception e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
    }
}

解析EXCEL:
import java.io.File;
import java.io.IOException;

import org.apache.commons.io.FileUtils;
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 PoiReadExcel {

    public static void main(String[] args) {
        /**
         *   Excel  
         */
        File file = new File("C:/Users/Administrator/Desktop/demo1.xls");
        try {
            HSSFWorkbook workbook = 
                    new HSSFWorkbook(FileUtils.openInputStream(file));
            //        workbook.getSheet("Sheet0");
//            HSSFSheet sheet = workbook.getSheet("Sheet0");
            //          sheet
            HSSFSheet sheet = workbook.getSheetAt(0);
            int firstRowNum = 0;
            //  sheet       
            int lastRowNum = sheet.getLastRowNum();
            for(int i = firstRowNum; i <= lastRowNum; i++) {
                HSSFRow row = sheet.getRow(i);
                //            
                int lastCellNum = row.getLastCellNum();
                for(int j = 0; j < lastCellNum; j++) {
                    HSSFCell cell = row.getCell(j);
                    String value = cell.getStringCellValue();
                    System.out.print(value + "  ");
                }
                System.out.println();
            }
        } catch (IOException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
    }
}

【2】ハイ・バージョンのインポート・エクスポート方法:
パッケージをインポートする必要があります:
添付ファイル
EXCELの生成:
import java.io.File;
import java.io.FileOutputStream;

import org.apache.commons.io.FileUtils;
import org.apache.poi.xssf.usermodel.*;


public class CopyOfPoiExp07Excel {

    /**
     *   Excel  
     */
    public static void main(String[] args) {
        String[] title = {"id", "name", "sex"};
        //     
        XSSFWorkbook workbook = new XSSFWorkbook();
        //       sheet
        XSSFSheet sheet = workbook.createSheet();
        //       
        XSSFRow row = sheet.createRow(0);
        XSSFCell cell = null;
        //       id、name、sex
        for (int i = 0; i < title.length; i++) {
            cell = row.createCell(i);
            cell.setCellValue(title[i]);
            
        }
        //    
        for(int i = 1; i <= 10; i++) {
            XSSFRow nextrow = sheet.createRow(i);
            XSSFCell cell2 = nextrow.createCell(0);
            cell2.setCellValue("" + i);
            cell2 =nextrow.createCell(1);
            cell2.setCellValue("user" + i);
            cell2 =nextrow.createCell(2);
            cell2.setCellValue(" ");
        }
        
        
        //      
        File file =new File("C:/Users/Administrator/Desktop/demo1.xlsx");
        try {
            file.createNewFile();
            FileOutputStream stream = FileUtils.openOutputStream(file);
            workbook.write(stream);
            
        } catch (Exception e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
    }
}

解析EXCEL:
import java.io.File;
import java.io.IOException;

import org.apache.commons.io.FileUtils;
import org.apache.poi.xssf.usermodel.XSSFCell;
import org.apache.poi.xssf.usermodel.XSSFRow;
import org.apache.poi.xssf.usermodel.XSSFSheet;
import org.apache.poi.xssf.usermodel.XSSFWorkbook;


public class CopyOfPoiRead07Excel {

    public static void main(String[] args) {
        //     Excel  
        File file = new File("C:/Users/Administrator/Desktop/demo1.xls");
        try {
            XSSFWorkbook workbook = 
                    new XSSFWorkbook(FileUtils.openInputStream(file));
            //        workbook.getSheet("Sheet0");
//            XSSFSheet sheet = workbook.getSheet("Sheet0");
            //          sheet
            XSSFSheet sheet = workbook.getSheetAt(0);
            int firstRowNum = 0;
            //  sheet       
            int lastRowNum = sheet.getLastRowNum();
            for(int i = firstRowNum; i <= lastRowNum; i++) {
                XSSFRow row = sheet.getRow(i);
                //            
                int lastCellNum = row.getLastCellNum();
                for(int j = 0; j < lastCellNum; j++) {
                    XSSFCell cell = row.getCell(j);
                    String value = cell.getStringCellValue();
                    System.out.print(value + "  ");
                }
                System.out.println();
            }
        } catch (IOException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
    }
}

ファイルの生成:
[img][/img]
  • Java实现EXCEL操作(1)_第1张图片
  • サイズ:25.2 KB
  • Java实现EXCEL操作(1)_第2张图片
  • サイズ:75 KB
  • 添付ファイルを表示