poi的配置maven配置:
<!-- https://mvnrepository.com/artifact/org.apache.poi/poi -->
<dependencies>
<dependency>
<groupId>org.apache.poi</groupId>
<artifactId>poi</artifactId>
<version>4.1.0</version>
</dependency>
</dependencies>
Apache POI是Apache软件基金会的开源项目,POI提供API给Java程序对Microsoft Office格式档案读和写的功能。 .NET的开发人员则可以利用NPOI (POI for .NET) 来存取 Microsoft Office文档的功能。
POI常用类说明:
类名 说明
HSSFWorkbook Excel的文档对象
HSSFSheet Excel的表单
HSSFRow Excel的行
HSSFCell Excel的格子单元
HSSFFont Excel字体
HSSFDataFormat 格子单元的日期格式
HSSFHeader Excel文档Sheet的页眉
HSSFFooter Excel文档Sheet的页脚
HSSFCellStyle 格子单元样式
HSSFDateUtil 日期
HSSFPrintSetup 打印
HSSFErrorConstants 错误信息表
1、首先创建一个类,读取自己准备的好的xls文件
2.创建一个主类对文件进行读取
import java.io.FileInputStream;
import java.io.IOException;
import org.apache.poi.hssf.usermodel.HSSFRow;
import org.apache.poi.hssf.usermodel.HSSFWorkbook;
import org.apache.poi.ss.usermodel.DataFormatter;
import org.apache.poi.ss.usermodel.Sheet;
import org.apache.poi.ss.usermodel.Workbook;
public class MyPoi {
public static void main(String[] args) throws IOException {
//读取创建一个excel文件的读取字节流
FileInputStream fis=new FileInputStream("C:\\Users\\dell\\Desktop\\a.xls");
Workbook book=new HSSFWorkbook(fis);
Sheet sheet= book.getSheetAt(0);
//文件的总行数
int rows=sheet.getLastRowNum();
System.out.println("总行数:"+rows);
//获取某一行的对象
HSSFRow row=(HSSFRow) sheet.getRow(0);
String aa=row.getCell(0).getNumericCellValue()+"";
DataFormatter formatter=new DataFormatter();
String aaa=formatter.formatCellValue(row.getCell(0));
System.out.println(aa);
System.out.println(aaa);
; }
}
1.用getNumericCellValue()方法读取结果:
由上可以看出,会带小数点
2.使用DataFormatter
Workbook book=new HSSFWorkbook(is);
Sheet sheet=book.getSheetAt(0);
HSSFRow row=(HSSFRow) sheet.getRow(1);
Cell cell=row.getCell(0);
DataFormatter dataForMatter=new DataFormatter();
String str=dataForMatter.formatCellValue(cell);
System.out.println(str);
此时结果为String类型,显示: 11
关于POI的详细介绍参考:https://www.cnblogs.com/huajiezh/p/5467821.html