最近要在一个Java做的项目中实现对Excel文件的读写操作,所以就在网上查阅相关资料。在Google中输入“Java读写Excel”进行搜索,果然就发现了自己想要的东西。其中《在Java中读写Excel文件》一文引起我的兴趣。进去大概看了一下,发现原来使用的Apache的POI组件实现的,随即进入Apache的POI网页一看。呀……好东西。不过能实现Excel文件操作,还能实现Word、PPT、Visio等文件的操作。太棒了,我真的是很高兴。不过因为时间太晚了,我就不多看了,也不多写了。等到我把我们系统中相关的功能完成后,我再好好看一下,然后给大家写一下具体使用方法和心得。

附《在Java中读写Excel文件》原文:
  Jakarta的POI项目提供了一组操纵Windows文档的Java API,如下几个类提供了操作Excel文件的方便的途径:HSSFWorkbook、HSSFSheet、HSSFRow、HSSFCell,分别代表了Excel电子表格中的Book、Sheet、行和单元格。
  你可以在下面地址下载到最新的POI工具包:

  http://jakarta.apache.org/poi/index.html

  下面的代码创建一个Excel文件test.xls,并在第一行的第一格中写入一条消息:

  import org.apache.poi.hssf.usermodel.*;
  import java.io.FileOutputStream;
  // code run against the jakarta-poi-1.5.0-FINAL-20020506.jar.
  public class PoiTest {
  static public void main(String[] args) throws Exception {
  FileOutputStream fos = new FileOutputStream("d:\test.xls");
  HSSFWorkbook wb = new HSSFWorkbook();
  HSSFSheet s = wb.createSheet();
  wb.setSheetName(0, "first sheet");
  HSSFRow row = s.createRow(0);
  HSSFCell cell = row.createCell(0);
  cell.setCellValue("Hello! This message is generated from POI.");
  wb.write(fos);
  fos.close();
   }
  }

  读取Excel文件时,首先生存一个POIFSFileSystem对象,由POIFSFileSystem对象构造一个HSSFWorkbook,该HSSFWorkbook对象就代表了Excel文档。下面代码读取上面生成的Excel文件写入的消息字串:
  POIFSFileSystem fs = null;
  HSSFWorkbook wb = null;
  try {
  fs = new POIFSFileSystem(new FileInputStream("d:\test.xls"));
  wb = new HSSFWorkbook(fs);
  } catch (IOException e) {
  e.printStackTrace();
  }
  HSSFSheet sheet = wb.getSheetAt(0);
  HSSFRow row = sheet.getRow(0);
  HSSFCell cell = row.getCell((short) 0);
  String msg = cell.getStringCellValue();
posted on 2008-05-28 01:17  马登军  阅读(4345)  评论(1编辑  收藏  举报