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. PHP易混淆函数的区分方法及意义

    1.echo和print的区别   PHP中echo和print的功能基本相同(输出),但是两者之间还是有细微差别的.echo输出后没有返回值,但print有返回值,当其执行失败时返回flase.因此 ...

  2. 关于调用deleteRowsAtIndexPaths withRowAnimation方法出现错误

    通常原因是因为 这个方法的调用与数据源有关. 检测1.你的数据源是否写死了. 2.调用该方法前你是否移除相关的数据源 相关的核心代码如下: - (NSInteger)tableView:(UITabl ...

  3. JavaScript中本地对象、内置对象和宿主对象

    链接:http://www.cnblogs.com/luckyXcc/p/5892896.html(Milk.╮的博客园提供) 其中内置对象只有两种:ECMA-262 只定义了两个内置对象,即 Glo ...

  4. python自动化框架nose

    python除了unittest,还有一款更快捷的nose,nose可以说是对unittest的一种简化吧 但是他不需要unittest那种必须有固有的格式,他只需要文件,类名,方法名等含有test就 ...

  5. (进阶篇)PHP+Mysql+jQuery找回密码

    通常所说的密码找回功能不是真的能把忘记的密码找回,因为我们的密码是加密保存的,一般开发者会在验证用户信息后通过程序生成一个新密码或者生成一个特定的链接并发送邮件到用户邮箱,用户从邮箱链接到网站的重置密 ...

  6. Struts2学习笔记(拦截器配置添加)

    一.拦截器工作原理: 根据Struts2的工作原理图,拦截器在action执行前进行顺序调用,之后执行Action并返回结果字符串,再逆序调用拦截器.(结构类似递归方式...)大部分时候,拦截器方法都 ...

  7. Java篇-File类之创建删除

    /** * */ package com.io.file; import java.io.File; import java.io.IOException; import org.junit.Test ...

  8. Pattern Recognition And Machine Learning (模式识别与机器学习) 笔记 (1)

    By Yunduan Cui 这是我自己的PRML学习笔记,目前持续更新中. 第二章 Probability Distributions 概率分布 本章介绍了书中要用到的概率分布模型,是之后章节的基础 ...

  9. 使用RXTX获取电脑串口

    RXTX是javacomm串口通信的一个扩展 RXTX开发所需文件的下载地址:http://rxtx.qbang.org/wiki/index.php/Download 解压之后可以看到支持各个平台的 ...

  10. 【P1825】表达式整除

    又自己写出来了好开心OvO 原题: 24点这个游戏好多人都玩过,就是给你4个数,添加相应的运算符,是否可以得到结果是24.小x在玩了很多遍这个游戏之后,想把这个游戏给改变一下.给你n个整数,在n个整数 ...