Java操作excel比较简单,但是时间长了就会忘记,因此基本的简单操作做个记录。

依赖poi的jar包,pom.xml配置如下:

  1. <project xmlns="http://maven.apache.org/POM/4.0.0"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  2. xsi:schemaLocation="http://maven.apache.org/POM/4.0.0http://maven.apache.org/maven-v4_0_0.xsd">
  3. <modelVersion>4.0.0</modelVersion>
  4. <groupId>excelDemo1</groupId>
  5. <artifactId>excelDemo1</artifactId>
  6. <packaging>war</packaging>
  7. <version>0.0.1-SNAPSHOT</version>
  8. <name>excelDemo1 Maven Webapp</name>
  9. <url>http://maven.apache.org</url>
  10. <dependencies>
  11. <dependency>
  12. <groupId>junit</groupId>
  13. <artifactId>junit</artifactId>
  14. <version>3.8.1</version>
  15. <scope>test</scope>
  16. </dependency>
  17. <dependency>
  18. <groupId>org.apache.poi</groupId>
  19. <artifactId>poi</artifactId>
  20. <version>3.8</version>
  21. </dependency>
  22. </dependencies>
  23. <build>
  24. <finalName>excelDemo1</finalName>
  25. </build>
  26. </project>

相应的java测试代码分别如下:

  1. package excelDemo1;
  2. import java.io.File;
  3. import java.io.FileOutputStream;
  4. import java.io.OutputStream;
  5. import org.apache.poi.hssf.usermodel.HSSFRow;
  6. import org.apache.poi.hssf.usermodel.HSSFSheet;
  7. import org.apache.poi.hssf.usermodel.HSSFWorkbook;
  8. public class ExcelDemo0 {
  9. /**
  10. * java生成excel文件并写入磁盘
  11. *
  12. * @author:tuzongxun
  13. * @Title: main
  14. * @param@param args
  15. * @return void
  16. * @date Apr 28,2016 7:32:52 PM
  17. * @throws
  18. */
  19. public static void main(String[] args) {
  20. //C:\Users\tuzongxun123\Desktop桌面,windows和linux的斜杠不一样,而且java对于“/”需要转义处理,File.separator可以实现跨平台
  21. File file = new File("C:" + File.separator + "Users" + File.separator
  22. + "tuzongxun123" + File.separator + "Desktop" + File.separator
  23. + "ioFile" + File.separator + "user.xls");
  24. try {
  25. OutputStream outputStream = new FileOutputStream(file);
  26. // 创建excel文件,注意这里的hssf是excel2007及以前版本可用,2007版以后的不可用,要用xssf
  27. HSSFWorkbook workbook = new HSSFWorkbook();
  28. // 创建excel工作表
  29. HSSFSheet sheet = workbook.createSheet("user");
  30. // 为工作表增加一行
  31. HSSFRow row = sheet.createRow(0);
  32. // 在指定的行上增加两个单元格
  33. row.createCell(0).setCellValue("name");
  34. row.createCell(1).setCellValue("password");
  35. // 调用输出流把excel文件写入到磁盘
  36. workbook.write(outputStream);
  37. // 关闭输出流
  38. outputStream.close();
  39. } catch (Exception e) {
  40. e.printStackTrace();
  41. }
  42. }
  43. }
    1. package excelDemo1;
    2. import java.io.BufferedInputStream;
    3. import java.io.File;
    4. import java.io.FileInputStream;
    5. import org.apache.poi.hssf.usermodel.HSSFRow;
    6. import org.apache.poi.hssf.usermodel.HSSFSheet;
    7. import org.apache.poi.hssf.usermodel.HSSFWorkbook;
    8. import org.apache.poi.poifs.filesystem.POIFSFileSystem;
    9. /**
    10. * 读取excel文件
    11. *
    12. * @author tuzongxun123
    13. *
    14. */
    15. public class ExcelDemo2 {
    16. public static void main(String[] agrs) {
    17. try {
    18. // 获取excel文件输入流
    19. FileInputStream fileInputStream = new FileInputStream("C:"
    20. + File.separator + "Users" + File.separator
    21. + "tuzongxun123" + File.separator + "Desktop"
    22. + File.separator + "ioFile" + File.separator + "user.xls");
    23. BufferedInputStream bufferedInputStream = newBufferedInputStream(
    24. fileInputStream);
    25. POIFSFileSystem fileSystem = new POIFSFileSystem(
    26. bufferedInputStream);
    27. // 获取excel文件
    28. HSSFWorkbook hssfWorkbook = new HSSFWorkbook(fileSystem);
    29. // 根据名称获取指定的excel工作薄
    30. HSSFSheet sheet = hssfWorkbook.getSheet("user");
    31. // 这里实际上可以用sheet.rowIterator()来遍历
    32. for (int i = 1;; i++) {
    33. HSSFRow row = sheet.getRow(i);
    34. if (row != null) {
    35. String nameString1 = row.getCell(0).getStringCellValue();
    36. String password = row.getCell(i).getStringCellValue();
    37. System.out.println("name:" + nameString1);
    38. System.out.println("password:" + password);
    39. bufferedInputStream.close();
    40. } else {
    41. bufferedInputStream.close();
    42. return;
    43. }
    44. }
    45. } catch (Exception e) {
    46. e.printStackTrace();
    47. }
    48. }
    49. }

Java使用poi操作cexel的更多相关文章

  1. java使用POI操作XWPFDocument中的XWPFRun(文本)对象的属性详解

    java使用POI操作XWPFDocument中的XWPFRun(文本)对象的属性详解 我用的是office word 2016版 XWPFRun是XWPFDocument中的一段文本对象(就是一段文 ...

  2. java里poi操作excel的工具类(兼容各版本)

    转: java里poi操作excel的工具类(兼容各版本) 下面是文件内具体内容,文件下载: import java.io.FileNotFoundException; import java.io. ...

  3. java使用POI操作excel文件,实现批量导出,和导入

    一.POI的定义 JAVA中操作Excel的有两种比较主流的工具包: JXL 和 POI .jxl 只能操作Excel 95, 97, 2000也即以.xls为后缀的excel.而poi可以操作Exc ...

  4. Java POI操作Excel注意点

    excel的行索引和列索引都是从0开始,而行号和列号都是从1开始 POI·操作excel基本上都是使用索引 XSSFRow对象的 row.getLastCellNum() 方法返回的是当前行最后有效列 ...

  5. JAVA的POI操作Excel

    1.1Excel简介 一个excel文件就是一个工作簿workbook,一个工作簿中可以创建多张工作表sheet,而一个工作表中包含多个单元格Cell,这些单元格都是由列(Column)行(Row)组 ...

  6. (三)JAVA使用POI操作excel

    1,单元格对齐方式 Demo8.java package com.wishwzp.poi; import java.io.FileOutputStream; import java.util.Date ...

  7. (一)JAVA使用POI操作excel

    1,Poi 简介 Apache POI 是用Java编写的免费开源的跨平台的 Java API,Apache POI提供API给Java程式对Microsoft Office格式档案读和写的功能 PO ...

  8. java用POI操作excel——随便写一下,最基础的东西

    前两天部门实施在做一个东西,需要把客户放在Excel中的数据导入到Oracle数据库中,我就想着直接写一个模板,必要的时候改一下实体类应该可以解放实施同事的双手,不过在实际写的过程中,还是碰到很多问题 ...

  9. Java 利用POI操作PPT

    解析PPT文件中的图片 import java.io.File; import java.io.FileOutputStream; import org.apache.poi.hslf.HSLFSli ...

随机推荐

  1. EventBus的使用

    # EventBus用于android线程间的通信,方便将子线程的数据发送的UI线程,对UI界面更新:总体来说对于这个过程可以分为3个步骤: 1.创建event,用于传递信息: 比如你需要传List集 ...

  2. CDH5X 安装oozie报错To enable Oozie web console install the Ext JS library.

    最近在CDH5.X 安装oozie 服务,服务安装完毕,访问oozie server ui,报如下错误: 页面提示: Oozie web console is disabled.To enable O ...

  3. Java(五)

    ♥作业1: 显示指定路径所有文件及实现文件筛选.智能监控,程序能自动在下拉菜单生成任意路径下文件所有尾缀.  代码内注释内容为步骤与整体思路  import java.awt.BorderLayout ...

  4. dwr和spring的整合

    1.dwr在spring配置文件的配置: <!-- 注意这里新增加的dwr tag, 为使其生效,文件头中要声明namespace --> <dwr:configuration /& ...

  5. Oracle 常用修改字段SQL语句

    1. 更新字段名称 alter table table_name rename column column_old to column_new; 2. 添加字段 ); 3. 删除字段 alter ta ...

  6. Lua table库整理(v5.1)

    这个库提供了表处理的通用函数. 所有函数都放在表 table. 无论何时,若一个操作需要取表的长度, 这张表必须是一个真序列. table.concat(list, [, sep, [, i , [, ...

  7. CSS3如何去除 inline block 元素之间多出的空格

    display: inline-block 属性很好的避免了元素的浮动问题,但是会有点小问题,就是 inline-block 元素间的回车会被显示为一个空格.然而,我们写代码时,都是用回车来格式化的. ...

  8. Sql/Plus连接Oracle时候出现sql*net not properly installed 解决办法

    在PLSQL Developer选择Tools > Preferences > options > 下的如图所示:"Oracle Home" and " ...

  9. Express4.x常用API(二):Request

    这是第二篇了,打算每天都拿些时间去详细的看看文档来自学下express吧,接下来就开始了,这次依然是有选择性的找API根据自己的理解翻译过来,方便日后开发时候的自己查阅,由于水平有限,大概也会在使用过 ...

  10. sql语句 decimal(18,0)什么意思

    decimal(18,0)18是定点精度,0是小数位数.decimal(a,b)a指定指定小数点左边和右边可以存储的十进制数字的最大个数,最大精度38.b指定小数点右边可以存储的十进制数字的最大个数. ...