通过POI的方式读取execl表格(简单教程

本文介绍了一种利用Java POI库读取Excel 2010文件的方法,特别是如何处理包含长数字精度数据的表格,避免了这些数据在打开时被自动转换为科学计数法的问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

以前工作都是用的csv文件,但是csv文件有一个致命的缺点,那就是如果用双击的方式直接打开csv文件并做了修改的话,那么长精度的数字会自动转换为科学技术法。。
刚开始还每次都用execl导入的方式,后来感觉实在是麻烦了。
于是下决心学一学POI的方式读取execl2010。
网上搜了一些资料,参考了论坛上网友的一些回帖。。
整理了一下,产生了如下的教程,特点就是注释多,看的明白,并没有什么特别的操作:
首先我要读取的execl表:

所需要的jar包为:
poi.jar
poi-ooxml.jar
poi-ooxml-schemas.jar。
另外还需要
dom4j.jar
xmlbeans.jar
如果这两个jar包不添加的话会报错:
Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/xmlbeans/XmlOptions
我的jar包列表如下:

最后上代码:
Java code
?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
package  cn.execl;
  
import  java.io.FileInputStream;
import  java.io.InputStream;
  
import  org.apache.poi.ss.usermodel.Cell;
import  org.apache.poi.ss.usermodel.Row;
import  org.apache.poi.ss.usermodel.Sheet;
import  org.apache.poi.ss.usermodel.Workbook;
import  org.apache.poi.ss.usermodel.WorkbookFactory;
  
public  class  POIReaderExecl {
     public  static  void  main(String[] args)  throws  Exception {
         //输入输出流
         InputStream is =  new  FileInputStream( "d://work.xlsx" );
         //创建工作空间
         Workbook wb = WorkbookFactory.create(is);
         //获取工作表
         Sheet sheet = wb.getSheetAt( 0 ); //获取第一个工作表
         //工作行
         Row row ;
         //工作单元格
         Cell cell ;
         //System.out.println("1:"+cell);
         for ( int  i= 1 ;i<=sheet.getLastRowNum();i++){
             //获取第i行的工作行,第0行是列头,所以从第1行开始
             row= sheet.getRow(i);
             //获取第i行的工作行的第6个单元格的值
             cell=row.getCell( 5 );
             String str=cell.toString();
                 //打印出所有的产品编号
             System.out.println(str);     
         }
  
     }
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值