`
pengchua
  • 浏览: 152628 次
  • 性别: Icon_minigender_1
  • 来自: 上海
文章分类
社区版块
存档分类
最新评论

JExcelAPI与Apache POI两者对比

阅读更多

一,JExcelAPI与Apache POI两者对比
  1、JExcelAPI不适合商业应用,它都是会莫名其妙的读不出来数据。
  2、Apache POI是一纯Java的实现,不仅能读微软的Excel还可以读Open Office的,新版HSSF3.0还添加了读取Power Point的功能。总之是一种非常稳定,强大的实现。推荐使用。


Jexcelapi的使用参考:http://blog.csdn.net/yfhdsz/archive/2006/10/30/1356670.aspx

apache POI 参考:http://blog.csdn.net/yuansicau/archive/2006/08/31/1150046.aspx
关键是要理解
 java读取excel文件的顺序是:
Excel文件->工作表->行->单元格 对应到POI中,为:workbook->sheet->row->cell
注意:
 注意:  
          1.sheet, 以0开始,以workbook.getNumberOfSheets()-1结束
   2.row, 以0开始(getFirstRowNum),以getLastRowNum结束
   3.cell, 以0开始(getFirstCellNum),以getLastCellNum结束,
          结束的数目不知什么原因与显示的长度不同,可能会偏长
 
 如何插图片到Excel中
 public static void createPicture() {
  FileOutputStream fileOut = null;
  BufferedImage bufferImg = null;
  BufferedImage bufferImg1 = null;
  try {
   ByteArrayOutputStream byteArrayOut = new ByteArrayOutputStream();
   ByteArrayOutputStream byteArrayOut1 = new ByteArrayOutputStream();
   bufferImg = ImageIO.read(new File("C:/Documents and Settings/All Users/Documents/My Pictures/示例图片/Sunset.jpg"));
   bufferImg1 = ImageIO.read(new File("C:/Documents and Settings/All Users/Documents/My Pictures/示例图片/Water lilies.jpg"));
   ImageIO.write(bufferImg, "jpeg", byteArrayOut);
   ImageIO.write(bufferImg1, "jpeg", byteArrayOut1);

   HSSFWorkbook wb = new HSSFWorkbook();
   HSSFSheet sheet1 = wb.createSheet("new sheet");
   // HSSFRow row = sheet1.createRow(2);
   HSSFPatriarch patriarch = sheet1.createDrawingPatriarch();
   HSSFClientAnchor anchor = new HSSFClientAnchor(0, 0, 512, 255,
     (short) 0, 0, (short) 10, 10);
   HSSFClientAnchor anchor1 = new HSSFClientAnchor(0, 0, 512, 255,
     (short) 0, 15, (short) 10, 20);
   /**
    * public HSSFClientAnchor(int dx1, int dy1, int dx2, int dy2, short
    * col1, int row1, short col2, int row2)
    * Creates a new client anchor
    * and sets the top-left and bottom-right coordinates of the anchor.
    *
    * Parameters: dx1 - the x coordinate within the first cell.
    * dy1 - the y coordinate within the first cell.
    * dx2 - the x coordinate within the second cell.
    * dy2 - the y coordinate within the second cell.
    * col1 - the column (0 based) of the first cell.
    * row1 - the row (0 based) of the first cell.
    * col2 - the column (0 based) of the second cell.
    * row2 - the row (0 based) of the second cell.
    * 注意:(col1,row1)表示图片左上角所在单元格
    * (col2,row2)表示图片右下角所在单元格,
    * 先是列,再行,顺序不要反了.
    * (dx1,dy1)表示图片左上角在单元格中的坐标.
    * ((dx2,dy2)表示图片右下角在单元格中的坐标.
    */
   patriarch.createPicture(anchor, wb.addPicture(byteArrayOut
     .toByteArray(), HSSFWorkbook.PICTURE_TYPE_JPEG));
   patriarch.createPicture(anchor1, wb.addPicture(byteArrayOut1
     .toByteArray(), HSSFWorkbook.PICTURE_TYPE_JPEG));

   fileOut = new FileOutputStream("e:/study/workbook.xls");
   wb.write(fileOut);
   fileOut.close();

  } catch (IOException io) {
   io.printStackTrace();
   System.out.println("io erorr :  " + io.getMessage());
  } finally {
   if (fileOut != null)
    try {
     fileOut.close();
    } catch (IOException e) {
     // TODO Auto-generated catch block
     e.printStackTrace();
    }
  }
 }
 



分享到:
评论

相关推荐

    jxl,POI jar包

    标题中的“jxl,POI jar包”提及的是两个在Java编程中用于处理电子表格的库,即JExcelAPI(jxl)和Apache POI。这两个库都是为了方便开发者读写Microsoft Office格式的文件,尤其是Excel工作簿。下面将详细阐述这两...

    poi,jxl.jar

    标题 "poi,jxl.jar" 暗示了我们讨论的主题是使用Apache POI库与JExcelAPI(jxl.jar)来操作Excel文件。Apache POI是一个流行的Java库,允许开发者创建、修改和显示Microsoft Office格式的文件,尤其是Excel工作簿。...

    jxl,POI jar包

    标题中的"jxl, POI jar包"表明这是一个关于Java编程中处理电子表格的库的讨论,主要涉及两个流行的库:jExcelAPI(jxl)和Apache POI。这两个库都允许开发者在Java应用程序中读取、写入和操作Microsoft Office格式的...

    poi jxl 生成EXCEL 报表

    Apache POI 和 JExcelAPI(JXL)是两个广泛使用的库,分别用于处理Microsoft Office的POI格式(包括Excel)和Java环境中的Excel文件。下面将详细阐述这两个库以及如何使用它们来生成Excel报表。 Apache POI 是一个...

    java实现操作Excl

    Java提供了多种库来方便地读写Excel文件,其中最常用的是Apache POI和JExcelAPI。 Apache POI是Apache软件基金会的一个开源项目,它提供了一套API,使得开发者可以用Java来处理Microsoft Office格式的文件,包括...

    java excel导入导出

    - 注意不同版本的Excel文件(.xls vs .xlsx)可能需要使用不同的API,Apache POI提供了对两者的支持。 6. **最佳实践** - 避免过度使用内存,及时释放不再需要的对象。 - 在导入时,对数据进行校验,确保符合...

    java excel转html

    - **转换为HTML**:与Apache POI类似,将JExcelAPI获取的数据构建成HTML表格结构。 转换过程中,需要考虑的一些关键点包括: - **样式和格式保持**:Excel文件可能包含复杂的格式,如颜色、字体、对齐方式、边框...

    java操作excel的实例

    除了Apache POI,还有其他Java库可供选择,如JExcelApi(较旧,支持.xls)和Aspose.Cells(商业库,支持.xlsx和更多功能)。根据项目需求,可以选择适合的库。 6. **错误处理与资源管理** 在处理文件时,确保正确...

    JAVA+Excel+API开发.zip_java excle_编程

    首先,我们需要了解Java中处理Excel的主要库,如Apache POI和JExcelApi。Apache POI是Java社区广泛使用的开源项目,提供了读写Microsoft Office格式文件的能力,包括Excel(.xlsx/.xls)。JExcelApi则是一个较老但...

    java_excel_api_2.6.12

    尽管JExcelAPI专为Excel设计,而Apache POI则更为全面,两者在某些场景下可以互为补充。 JExcelAPI的核心功能包括: 1. **读取Excel文件**:通过Workbook接口,你可以打开并访问Excel文件中的数据。Sheet接口则...

    javaxls中文教程.rar

    在Java中处理Excel,通常涉及到的库有Apache POI、JExcelAPI等,它们允许开发者通过编程方式与Excel文件进行交互。 【压缩包子文件的文件名称列表】中的"javaxls中文教程.docx"可能是教程的主体部分,采用Word文档...

    jxl中文教程

    - **jExcelAPI与POI**:在开源社区中,jExcelAPI(简称jxl)和Apache POI是最常见的两个处理Excel的库。 - **jxl** 支持Excel 95-2000版本,能生成Excel 2000格式文件,支持字体、数字、日期操作,可修饰单元格属性...

    Java_Jxl开发.doc

    在众多开源库中,**jExcelAPI**(简称**jxl**)和**Apache POI**是最受欢迎的两种选择。本文将重点介绍jxl库的基本概念、操作流程及其与POI之间的比较。 #### 二、jExcelAPI (jxl) 概述 jExcelAPI(jxl)是一个用于...

    Excel导入数据库and数据库数据导入Excel

    在实际项目中,也可以利用现成的工具或库,如ETL工具(如Apache Nifi、Talend)或者特定的Java库(如jXLS、JExcelApi),以简化开发流程。 总之,Excel与数据库之间的数据交换是数据处理的重要环节,而使用JDBC和...

    HojaRadio:工作表1

    1. **Java数据处理框架**:Java提供了许多数据处理框架,如Apache POI用于读写Microsoft Office格式的文件(包括Excel),JExcelAPI用于处理纯文本的CSV文件,或者使用JavaFX或Swing构建自定义的数据视图组件。...

    xlsUtils:Ecxl文档解析,结合Spring MVC 文件上传

    在Java世界中,处理Excel通常可以使用Apache POI或JExcelAPI等库,但xlsUtils可能是更轻量级的选择,其设计简洁,易于上手。 1. **xlsUtils的使用**: - **读取Excel**:通过创建xlsUtils实例,然后调用read方法,...

Global site tag (gtag.js) - Google Analytics