java代码解析excel文件(包含日期、小数的处理)
来源:互联网 发布:nba总决赛欧文数据统计 编辑:程序博客网 时间:2024/06/06 17:25
package com.test.test;
import java.io.IOException;
import java.text.DecimalFormat;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Collections;
import java.util.Date;
import java.util.Iterator;
import java.util.List;
import java.util.Vector;
import org.apache.poi.hssf.usermodel.HSSFDateUtil;
import org.apache.poi.xssf.usermodel.XSSFCell;
import org.apache.poi.xssf.usermodel.XSSFRow;
import org.apache.poi.xssf.usermodel.XSSFSheet;
import org.apache.poi.xssf.usermodel.XSSFWorkbook;
public class VolumeTest2 {
/**
* @param args
* @throws IOException
*/
public static void main(String[] args) throws IOException {
VolumeTest2 test=new VolumeTest2();
test.readXlsx();
}
@SuppressWarnings("deprecation")
private void readXlsx() throws IOException{
String fileName = "e:\\Test2.xlsx";
XSSFWorkbook xssfWorkbook = new XSSFWorkbook(fileName);
List<String> list = new ArrayList<String>();
// 循环工作表Sheet
for(int numSheet = 0; numSheet < xssfWorkbook.getNumberOfSheets(); numSheet++){
XSSFSheet xssfSheet = xssfWorkbook.getSheetAt( numSheet);
if(xssfSheet == null){
continue;
}
if(xssfSheet.getLastRowNum() == 0){
continue;
}
//System.out.println(xssfSheet.getLastRowNum()+"###www");
// 循环行Row
for(int rowNum = 1; rowNum <= xssfSheet.getLastRowNum(); rowNum++ ){
XSSFRow xssfRow = xssfSheet.getRow(rowNum);
if(xssfRow == null||xssfRow.toString().trim().equals("")){
continue;
}
// 循环列Cell
for(int cellNum = 1; cellNum <= xssfRow.getLastCellNum(); cellNum++){
XSSFCell xssfCell = xssfRow.getCell(cellNum);
if(xssfCell == null||xssfCell.toString().trim().equals("")){
continue;
}
System.out.print(getValue(xssfCell));
list.add(getValue(xssfCell));
}
System.out.println();
}
}
System.out.println("该集合最大值为"+Collections.max(list)+" 长度为"+list.size());
}
@SuppressWarnings("static-access")
private static String getValue(XSSFCell xssfCell){
if(xssfCell.getCellType() == xssfCell.CELL_TYPE_BOOLEAN){
return String.valueOf( xssfCell.getBooleanCellValue());
}else if(xssfCell.getCellType() == xssfCell.CELL_TYPE_NUMERIC){
if(HSSFDateUtil.isCellDateFormatted(xssfCell)) {
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
Date date = xssfCell.getDateCellValue();
return sdf.format(date);
}else {
String xssfCell2 = String.valueOf(xssfCell.getNumericCellValue());
DecimalFormat df = new DecimalFormat("#.#########");
return df.format(Double.valueOf(xssfCell2));
}
}else{
return String.valueOf(xssfCell.getStringCellValue());
}
}
}
1 0
- java代码解析excel文件(包含日期、小数的处理)
- java 保留小数与四舍五入以及时间日期的转换和excel读入与数据库写入
- java 阿拉伯数字转英文(包含小数)
- java解析excel文件
- Java 解析 Excel 文件
- java 解析excel文件
- java解析excel文件
- JAVA解析EXCEL文件
- java解析excel文件
- java EXCEL 文件解析
- Java解析rdf和xml文件以及处理excel
- JAVA处理Excel文件---生成简单的Excel文件
- JAVA处理Excel文件---生成简单的Excel文件
- Java进度条(excel文件解析)的实现
- java处理excel文件
- Java处理Excel文件
- java解析Excel文件的方法
- java对excel文件的解析操作
- python2.7:文件编码检测chardet 详解
- 扒一扒HTTPS网站的内幕
- iOS开发基础-UIButton的使用
- C++三大函数(The Big Three)
- 省市二级显示jquery
- java代码解析excel文件(包含日期、小数的处理)
- ibatis 批量插入,批量更新,批量删除,xml与Java代码实现方式
- 2015最流行的Android组件、工具、框架大全
- select选中方法
- Windows Direct3D Intro - Device Lost
- Android使用fitsSystemWindows属性实现--状态栏【status_bar】各版本适配方案
- opensips介绍
- jquery学习-01-基础篇
- 掘金 Android 导航改进过程