我正在尝试使用我的业余Java编程技能自动化冗长而冗余的过程。该过程是从一个电子表格中获取名称和日期,并使用新信息更新单个电子表格(主页上的每个名称都有他或她自己的单独表格,更新并保存标题中的新日期。
我已下载JExcelApi以协助阅读和写入Excel,但我仍然无法掌握如何在电子表格中初步扫描或阅读。如果有人能指出我在这里的方向或提供一些将被赞赏的帮助。
到目前为止我还没有多少工作,因为我已经陷入了初始流程,实际上是在电子表格中阅读,或者我提供了代码。
答案 0 :(得分:2)
使用Apache POI,以tar.gz或zip格式下载poi.x.yy-date.jar。 How-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();
}
}
}