您的位置:首页 > 编程语言 > Java开发

使用POI读取xls和xlsx

2016-02-24 13:17 507 查看
import java.io.FileInputStream;  

import java.io.FileOutputStream;  

import java.io.IOException;  

import java.io.InputStream;  

import java.io.OutputStream;  

  

import org.apache.poi.hssf.usermodel.HSSFWorkbook;  

import org.apache.poi.ss.usermodel.Cell;  

import org.apache.poi.ss.usermodel.Row;  

import org.apache.poi.ss.usermodel.Sheet;  

import org.apache.poi.ss.usermodel.Workbook;  

import org.apache.poi.xssf.usermodel.XSSFWorkbook;  

  

public class TestReadAndWrite {  

    public static void main(String[] args) throws IOException {  

        String path = "d:/";  

        String fileName = "test";  

        String fileType = "xlsx";  

        writer(path, fileName, fileType);  

        read(path, fileName, fileType);  

    }  

    private static void writer(String path, String fileName,String fileType) throws IOException {  

        //创建工作文档对象  

        Workbook wb = null;  

        if (fileType.equals("xls")) {  

            wb = new HSSFWorkbook();  

        }  

        else if(fileType.equals("xlsx"))  

        {  

            wb = new XSSFWorkbook();  

        }  

        else  

        {  

            System.out.println("您的文档格式不正确!");  

        }  

        //创建sheet对象  

        Sheet sheet1 = (Sheet) wb.createSheet("sheet1");  

        //循环写入行数据  

        for (int i = 0; i < 5; i++) {  

            Row row = (Row) sheet1.createRow(i);  

            //循环写入列数据  

            for (int j = 0; j < 8; j++) {  

                Cell cell = row.createCell(j);  

                cell.setCellValue("测试"+j);  

            }  

        }  

        //创建文件流  

        OutputStream stream = new FileOutputStream(path+fileName+"."+fileType);  

        //写入数据  

        wb.write(stream);  

        //关闭文件流  

        stream.close();  

    }  

    public static void read(String path,String fileName,String fileType) throws IOException  

    {  

        InputStream stream = new FileInputStream(path+fileName+"."+fileType);  

        Workbook wb = null;  

        if (fileType.equals("xls")) {  

            wb = new HSSFWorkbook(stream);  

        }  

        else if (fileType.equals("xlsx")) {  

            wb = new XSSFWorkbook(stream);  

        }  

        else {  

            System.out.println("您输入的excel格式不正确");  

        }  

        Sheet sheet1 = wb.getSheetAt(0);  

        for (Row row : sheet1) {  

            for (Cell cell : row) {  

                System.out.print(cell.getStringCellValue()+"  ");  

            }  

            System.out.println();  

        }  

    }  

}  
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  poi java excel