当前位置: 代码迷 >> J2SE >> JAVA操作EXCEL2003如何操作
  详细解决方案

JAVA操作EXCEL2003如何操作

热度:178   发布时间:2016-04-24 13:29:15.0
JAVA操作EXCEL2003怎么操作?
JAVA操作EXCEL2003怎么操作?
处理数据的速度如何?

------解决方案--------------------
操作EXCEL2003?是控制运行中的excel???还是处理excel表格文件?
说清楚一些,才能给你建议。

如果是前者,需要jni,通过com接口去调用excel。
如果是后者,apache有poi项目,可以读excel文件。
------解决方案--------------------
用Java读写EXCEL的组件很多, JExelAPI, JXCell, JPOI, Jasper 太多了,我都用过,都很容易上手,一两个小时解决问题。
GOOGLE去吧。
------解决方案--------------------
最好还是用APACHE POI,OpenOffice就是用它做的引擎。POI本身性能相当不错,不过还要看你怎么样用了。
------解决方案--------------------
总是听起poi,但是一直没用过.刚才查看了一下自己的Lib,发现古董了:Created on 2004/09/13
我那时用的是jxl.jar,不知道现在还有没有.
贴两fun:
/**
 * @param writeSheet
 * @param x
 * @param y
 * @param value
 */
public static void setCellValue(WritableSheet writeSheet, int x, int y,
String value) {
try {
WritableCell cell = writeSheet.getWritableCell(x, y);
if (cell.getType() == CellType.EMPTY) {
Label write = new Label(x, y, value);
writeSheet.addCell(write);
} else {
Label write = (Label) cell;
write.setString(value);
}
} catch (RowsExceededException e1) {
e1.printStackTrace();
} catch (WriteException e1) {
e1.printStackTrace();
}
}

/**
 * Change the format of cell B4 to be emboldened
 * 
 * @param writeSheet
 * @param x
 * @param y
 */
public static void setCellBorder(WritableSheet writeSheet, int x, int y) {
WritableCell cell = writeSheet.getWritableCell(x, y);
//WritableFont bold = new WritableFont(WritableFont.ARIAL,
// WritableFont.DEFAULT_POINT_SIZE, WritableFont.BOLD);
WritableFont bold = new WritableFont(WritableFont
.createFont("MS UI Gothic"), 9, WritableFont.BOLD);
CellFormat cf = new WritableCellFormat(bold);
cell.setCellFormat(cf);
}


------解决方案--------------------
POI:给个例子
http://ltc603.javaeye.com/blog/30184
------解决方案--------------------
最好还是用APACHE POI,OpenOffice就是用它做的引擎。POI本身性能相当不错,不过还要看你怎么样用了。


错!!!

Poi只是把OpenOffice中的读写excel部分功能用java作的重新实现。不过只是实现了很小的一部分。

如果操作图形对象,poi好点;但是如果不需要操作图形对象,jxl可能是更好的选择。
  相关解决方案