将excel电子表格读入java

时间:2015-07-20 23:33:03

标签: java input spreadsheet

我正在尝试使用我的业余Java编程技能自动化冗长而冗余的过程。该过程是从一个电子表格中获取名称和日期,并使用新信息更新单个电子表格(主页上的每个名称都有他或她自己的单独表格,更新并保存标题中的新日期。

我已下载JExcelApi以协助阅读和写入Excel,但我仍然无法掌握如何在电子表格中初步扫描或阅读。如果有人能指出我在这里的方向或提供一些将被赞赏的帮助。

到目前为止我还没有多少工作,因为我已经陷入了初始流程,实际上是在电子表格中阅读,或者我提供了代码。

1 个答案:

答案 0 :(得分:2)

使用Apache POI,以tar.gz或zip格式下载poi.x.yy-date.jarHow-To page有一个例子。

import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.util.Date;

import org.apache.poi.hssf.usermodel.HSSFWorkbook;
import org.apache.poi.hssf.usermodel.HSSFSheet;
import org.apache.poi.hssf.usermodel.HSSFRow;
import org.apache.poi.hssf.usermodel.HSSFCell;


public class ReadExcel { 

    public static void main(String[] args) {

        try {
            FileInputStream fileInputStream = new FileInputStream("c:\\temp\\spreadsheet.xls");
            HSSFWorkbook wb = new HSSFWorkbook(fileInputStream);
            HSSFSheet    ws = wb.getSheet("Sheet1");
            HSSFRow      r1 = ws.getRow(0);
            HSSFCell     A1 = r1.getCell((short) 0);
            HSSFCell     A2 = r1.getCell((short) 1);
            HSSFCell     A3 = r1.getCell((short) 2);
            System.out.println("A1: " + A1.getStringCellValue() + " A2: " + A2.getStringCellValue() + " A3: " + A3.getStringCellValue() );
            HSSFRow      r2 = ws.getRow(1);
            HSSFCell     B1 = r2.getCell((short) 0);
            HSSFCell     B2 = r2.getCell((short) 1);
            HSSFCell     B3 = r2.getCell((short) 2);
            System.out.println("B1: " + B1.getNumericCellValue() + " B2: " + B2.getNumericCellValue() + " B3: " + B3.getNumericCellValue() );

        } catch (FileNotFoundException e) {
            e.printStackTrace();
        } catch (IOException e) {
            e.printStackTrace();
        }


    }

}