1. public interface JavaExcel {
  2.  
  3. /**
  4. * 使用jxl写excel文件
  5. */
  6. public void writeJxlExcel();
  7.  
  8. /**
  9. * 使用jxl读excel文件
  10. */
  11. public void readJxlExcel();
  12.  
  13. /**
  14. * 使用poi写excel文件
  15. */
  16. public void writePoiExcel();
  17.  
  18. /**
  19. * 使用poi读excel文件
  20. */
  21. public void readPoiExcel();
  22.  
  23. }
  1. import java.io.File;
  2. import java.io.FileInputStream;
  3. import java.io.FileOutputStream;
  4. import java.io.IOException;
  5. import java.util.Iterator;
  6.  
  7. import org.apache.poi.hssf.usermodel.HSSFRow;
  8. import org.apache.poi.hssf.usermodel.HSSFSheet;
  9. import org.apache.poi.hssf.usermodel.HSSFWorkbook;
  10. import org.apache.poi.ss.usermodel.Row;
  11.  
  12. import jxl.Sheet;
  13. import jxl.Workbook;
  14. import jxl.read.biff.BiffException;
  15. import jxl.write.Label;
  16. import jxl.write.WritableSheet;
  17. import jxl.write.WritableWorkbook;
  18. import jxl.write.WriteException;
  19. import jxl.write.biff.RowsExceededException;
  20.  
  21. public class JavaExcelImpl implements JavaExcel{
  22.  
  23. @Override
  24. public void writeJxlExcel() {
  25. File xlsFile = new File("jxl.xls");
  26. WritableWorkbook workbook = null;
  27. try {
  28. // 创建一个工作簿
  29. workbook = Workbook.createWorkbook(xlsFile);
  30. // 创建一个工作表
  31. WritableSheet sheet = workbook.createSheet("sheet", 0);
  32. for (int row = 0; row < 10; row++) {
  33. for (int col = 0; col < 10; col++) {
  34. sheet.addCell(new Label(col, row, "肆季"+row+col));
  35. }
  36. }
  37. workbook.write();
  38. } catch (IOException e) {
  39. e.printStackTrace();
  40. } catch (RowsExceededException e) {
  41. e.printStackTrace();
  42. } catch (WriteException e) {
  43. e.printStackTrace();
  44. } finally {
  45. if(workbook != null){
  46. try {
  47. workbook.close();
  48. } catch (WriteException | IOException e) {
  49. e.printStackTrace();
  50. }
  51. }
  52. }
  53.  
  54. }
  55.  
  56. @Override
  57. public void readJxlExcel() {
  58. File xlsFile = new File("jxl.xls");
  59. Workbook workBook = null;
  60. try {
  61. // 获得工作簿对象
  62. workBook = Workbook.getWorkbook(xlsFile);
  63. // 获得工作表
  64. Sheet[] sheet = workBook.getSheets();
  65. for (Sheet sheet2 : sheet) {
  66. int rows = sheet2.getRows();
  67. int cols = sheet2.getColumns();
  68. for (int row = 0; row < rows; row++) {
  69. for (int col = 0; col < cols; col++) {
  70. System.out.print(sheet2.getCell(col, row).getContents()+"\t");
  71. }
  72. System.out.println();
  73. }
  74. }
  75. } catch (BiffException | IOException e) {
  76. e.printStackTrace();
  77. }
  78.  
  79. }
  80.  
  81. @Override
  82. public void writePoiExcel() {
  83. // 创建工作簿
  84. HSSFWorkbook workBook = new HSSFWorkbook();
  85. // 创建工作表
  86. HSSFSheet sheet = workBook.createSheet("肆季");
  87. for (int row = 0; row < 10; row++) {
  88. HSSFRow rows = sheet.createRow(row);
  89. for (int col = 0; col < 10; col++) {
  90. rows.createCell(col).setCellValue("肆季"+row+col);
  91. }
  92. }
  93. File file = new File("poi.xls");
  94. FileOutputStream fos = null;
  95. try {
  96. fos = new FileOutputStream(file);
  97. workBook.write(fos);
  98. } catch (IOException e) {
  99. e.printStackTrace();
  100. } finally {
  101. try {
  102. if(workBook != null) {
  103. workBook.close();
  104. }
  105. if(fos != null) {
  106. fos.close();
  107. }
  108. } catch (IOException e) {
  109. e.printStackTrace();
  110. }
  111. }
  112. }
  113.  
  114. @Override
  115. public void readPoiExcel() {
  116. HSSFWorkbook swb = null;
  117. try {
  118. // 获取工作簿对象
  119. swb = new HSSFWorkbook(new FileInputStream("poi.xls"));
  120. // 获取工作表对象
  121. HSSFSheet sheet = swb.getSheetAt(0);
  122. // 使用迭代器遍历Sheet对象
  123. Iterator<Row> row = sheet.iterator();
  124. // 原始数据总行数
  125. int index = sheet.getLastRowNum();
  126. while(row.hasNext()){
  127. Row rows = row.next();
  128. for (int i = 0; i <= index; i++) {
  129. System.out.println(rows.getCell(i).getStringCellValue());
  130. }
  131. }
  132. } catch (IOException e) {
  133. e.printStackTrace();
  134. } finally {
  135. if(swb != null){
  136. try {
  137. swb.close();
  138. } catch (IOException e) {
  139. e.printStackTrace();
  140. }
  141. }
  142. }
  143.  
  144. }
  145.  
  146. }
  1. jxl下载:https://pan.baidu.com/s/17TPW-x4YCVf17RGNWEm_FA
  2. poi下载:https://pan.baidu.com/s/1J6iSpyXAQxyfXcwtMHf7dQ

  

java使用jxl,poi解析excel文件的更多相关文章

  1. poi解析Excel文件版本问题

    poi解析Excel文件时有两种格式: HSSFWorkbook格式用来解析Excel2003(xls)的文件 XSSFWorkbook格式用来解析Excel2007(xlsx)的文件 如果用HSSF ...

  2. java 用 jxl poi 进行excel 解析 *** 最爱那水货

    /** * 解析excel文件 ,并把数据放入数组中 格式 xlsx xls * @param path 从ftp上下载到本地的文件的路径 * @return 数据数组集合 */ public Lis ...

  3. 使用apache POI解析Excel文件

    1. Apache POI简介 Apache POI是Apache软件基金会的开放源码函式库,POI提供API给Java程式对Microsoft Office格式档案读和写的功能. 2. POI结构 ...

  4. Jquery的一键上传组件OCUpload及POI解析Excel文件

    第一步:将js文件引入页面 <script type="text/javascript" src="${pageContext.request.contextPat ...

  5. 关于POI解析Excel文件(03和07版本不同)的问题

    问题描述:在使用poi包进行excel解析时,发现对Excel2003以前(包括2003)的版本没有问题,但读取Excel2007时发生如下异常:org.apache.poi.poifs.filesy ...

  6. java使用Apache POI操作excel文件

    官方介绍 HSSF is the POI Project's pure Java implementation of the Excel '97(-2007) file format. XSSF is ...

  7. Apache POI解析excel文件

    这里需要用到poi.jar和poi-ooxml.jar  没有的可以去http://mvnrepository.com/下载 import org.apache.poi.POIXMLDocument; ...

  8. java 使用jxl poi 操作excel

    java操作excel  创建.修改 xls 文件 JAVA操作Excel文件 Java生成和操作Excel文件 java导出Excel通用方法 Java 实现导出excel表 POI Java PO ...

  9. java利用poi解析excel文件

    首先需要引入以下jar包 如果使用maven,需要添加两个依赖 <dependencies> <dependency> <groupId>org.apache.po ...

随机推荐

  1. String formate的语法解析及简单用法

    转自:https://blog.csdn.net/jiangyu1013/article/details/52607257 package cn.wuxiangbin.StringFormat; im ...

  2. latex中使用定理、证明、缩进

    1.定理和证明 \documentclass[a4paper,UTF8]{article} \usepackage{ctex} \usepackage{amsthm,amsmath,amsfonts, ...

  3. seriviceWorker 小结

    serviceWorker 的状态 install → activate. 1.初进页面,此前未加载过serviceWorker,直接进入install状态,随后进入activate状态,但是此时se ...

  4. Bartender标签传参与打印

    在VS中添加bartender的COM组件引用后(一定要添加,否则会提示找不到BarTender.Application): /// <summary> /// Bartender模板打印 ...

  5. Build up java environment(配置java环境)

    1,配置环境变量 我的电脑,右键计算机图标,点击“属性” 点击“高级系统设置” 点击“环境变量” “系统变量”一栏,点击“新建” 弹出输入“变量名”.“变量值”窗口 “变量名”输入“JAVA_HOME ...

  6. install MariaDB 10.2 on Ubuntu 18

    Here are the commands to run to install MariaDB 10.2 from the MariaDB repository on your Ubuntu syst ...

  7. [Python学习笔记] turtle库的基本使用

    turtle库常用函数 引入turtle模块 import turtle turtle的绘图窗体 #setup()设置窗口大小及位置#setup()可省略turtle.setup(width,heig ...

  8. smart contract 知识点

    知识点 memory vs storage vs stack storage , where all the contract state variables reside. Every contra ...

  9. ionic页面间跳转的动画实现

    1. 在<ion-view>标签中加入: nav-direction="back"或nav-direction="forward" 2.用$stat ...

  10. java-使用icepdf实现pdf转换成png

    下载icepdf的架包,并导入项目中,这里用到4个,如下: /** * 本地pdf文件转png */ public static int pdf2pngByFile(String target){ S ...