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. NOIP2016 模拟赛

    7.10 T1:求出一个矩阵中平均数大于0的子矩阵的最大面积. T2:给出一个N行的,第I行有n+1-i的倒三角形,从中选取m个数,只有当前数的左上角和右上角都被选是才能选当前数,求选的数字的最大和 ...

  2. re.S

    在Python的正则表达式中,有一个参数为re.S.它表示多行匹配

  3. 利用 ipset 封禁大量 IP

    使用 iptables 封 IP,是一种比较简单的应对网络攻击的方式,也算是比较常见.有时候可能会封禁成千上万个 IP,如果添加成千上万条规则,在一台注重性能的服务器或者本身性能就很差的设备上,这就是 ...

  4. OpenGL管线(用经典管线代说着色器内部)

    图形管线(graphics pipeline)向来以复杂为特点,这归结为图形任务的复杂性和挑战性.OpenGL作为图形硬件标准,是最通用的图形管线版本.本文用自顶向下的思路来简单总结OpenGL图形管 ...

  5. 工作记事 unknownHost

    使用xutils框架   下带图片(文件)事解析时在urlconnection  执行connect操作的时候抛出 UnknownHostException 而浏览器中能够正常访问该地址.这是由于该u ...

  6. jquery与各种UI框架的导入要注意的地方

    前端的处理我们会使用easyUI,amazeUI,bootstrap等等框架,然而每个页面都要导入这些js   css 文件,所以我们将要导入的文件提取出来,写在一个页面上,每次只要倒入该页面就行,如 ...

  7. MFC编程 | 非模态对话框的定义

    因为课程需要,会用到MFC编程,所以讲一些经验总结下,以便日后使用查询. // 非模态对话框的定义 // 通过单文档菜单调用一个非模态窗口 1.首先在工程里插入一个对话框(如:IDD_DLG_TEST ...

  8. LEETCODE —— Binary Tree的3 题 —— 3种非Recursive遍历

    Binary Tree Preorder Traversal Given a binary tree, return the preorder traversal of its nodes' valu ...

  9. Struts2文件下载找不到输入流异常

    先发异常 Can not find a java.io.InputStream with the name [downloadFile] in the invocation stack. Check ...

  10. LINQ 联表查询 取count 值

    linq to sql 实现左外部连接:var query=from a in A join b in B on a.ID equals b.aID into ab from a1 in ab.Def ...