读取excel大概在java中有两种方法,选用apache的POI读取
示例
示例
public class ExportStandName { /** * 取得标准表中的标准字段放在一个map的key中 * * @return standMap */ private Map<String, String> readStandExcel() { Map<String, String> standMap = new HashMap<String, String>(); String filePath = "path/Stand.xls"; File file = new File(filePath); try { FileInputStream fileInputStream = new FileInputStream(file); POIFSFileSystem readPoiFileSystem = new POIFSFileSystem( fileInputStream); HSSFWorkbook workbook = new HSSFWorkbook(readPoiFileSystem); HSSFSheet sheet = workbook.getSheetAt(0); Iterator<Row> rows = sheet.rowIterator(); while (rows.hasNext()) { Row row = rows.next(); String name = row.getCell(1).getStringCellValue(); standMap.put(name, ""); } } catch (Exception e) { e.printStackTrace(); } for (String s : standMap.keySet()) { System.out.println(s); } return standMap; } /** * * * @param location * @param map * @return map */ private Map<String, String> readCityExcel(String location, Map<String, String> map) { Map<String,String>cityMap=new HashMap<String, String>(); String filePath = "C:/Users/Administrator/Desktop/工作/" + location + ".xls"; File file = new File(filePath); try { POIFSFileSystem readPoiFileSystem = new POIFSFileSystem( new FileInputStream(file)); HSSFWorkbook workbook = new HSSFWorkbook(readPoiFileSystem); HSSFSheet sheet = workbook.getSheetAt(0); Iterator<Row> rows = sheet.rowIterator(); while (rows.hasNext()) { Row row = rows.next(); String value = row.getCell(0).getStringCellValue(); System.out.println(">>>>>" + value); Cell cell = row.getCell(3); if (cell.getCellType() != Cell.CELL_TYPE_NUMERIC) { String name = row.getCell(3).getStringCellValue(); if (name != null && name.length() > 0) { String mapValue = cityMap.get(name); if (map.containsKey(name)) { value += ","; mapValue += value; cityMap.put(name, mapValue); } } } } } catch (Exception e) { e.printStackTrace(); } return cityMap; } private void writeExcel(int index,String location, Map<String, String> map) { String filePath = "C:/Users/Administrator/Desktop/工作/Stand.xls"; File file = new File(filePath); FileOutputStream fileOutputStream = null; try { POIFSFileSystem readPoiFileSystem = new POIFSFileSystem(new FileInputStream(file)); HSSFWorkbook readWorkbook = new HSSFWorkbook(readPoiFileSystem); HSSFSheet readSheet = readWorkbook.getSheetAt(0); Row row1 = readSheet.getRow(0); if(row1==null){ row1=readSheet.createRow(0); } int rowNum = row1.getLastCellNum(); HSSFCell pnCell = null; if (index >=rowNum) { pnCell = (HSSFCell) row1.createCell(index); } else { pnCell=(HSSFCell)row1.getCell(index); } pnCell.setCellValue(location); for(Row row:readSheet){ HSSFCell nameCell=(HSSFCell)row.getCell(1); if(nameCell!=null){ String name=nameCell.getStringCellValue(); HSSFCell valueCell=(HSSFCell)row.getCell(index); if(valueCell==null){ valueCell=(HSSFCell)row.createCell(index); } String value=map.get(name); if(value!=null&&value.length()>0){ value = value.substring(4, value.length()-1); } valueCell.setCellValue(value); } } fileOutputStream=new FileOutputStream(file); fileOutputStream.flush(); readWorkbook.write(fileOutputStream); fileOutputStream.close(); } catch (Exception e) { e.printStackTrace(); } } public void doSomething() { Map<String, String> map = readStandExcel(); setStanMap(map); Map<String, String> map1=null; for (int i = 0; i < locations.length; i++) { map1= readCityExcel(locations[i], getStanMap()); writeExcel(i + 2, locations[i], map1); } } public static void main(String[] args) { new ExportStandName().doSomething(); // String value = "啊21保守党发按时"; // value = value.substring(0,value.length()-1); // System.out.println(value); } }
发表评论
-
java中线程池
2016-06-26 16:31 401最近在看线程池的类容,自己动手实现一个 package ... -
jvm常用设置
2015-09-08 22:48 423在我们实际工作中,可能会经常对JVM有一些设置,但是很多设置都 ... -
WebService相关
2015-07-26 21:55 1013之前由于工作需要 ... -
java RMI
2015-07-23 23:04 467JAVA RMI相关 分布 ... -
java jdbc 连接池
2015-07-21 00:18 519经常使用hibernate,在使用hibernate的时候经常 ... -
java 流传输压缩包
2015-07-14 23:14 623有的时候,页面上的下载文件是从后台使用流的形式下载来的,而不是 ... -
java 网络传输文件
2015-06-01 21:14 471package sterning; import java. ... -
java MD5加密
2015-03-30 14:41 335MD5是常用的加密算法,也经常用于校验信息完整,如文件的完整性 ... -
java 并发容器
2014-12-18 23:19 388在多线程的开发 ... -
java设计模式 之 builder模式
2014-12-11 22:19 449最近在看java设计模式,看到builder模式感觉十分不错, ... -
网上见到一篇compareTo文章较好,收藏之
2014-12-04 21:04 5811、compareTo(Object o)方法是jav ... -
Hibernate 和 spring 整合使用
2014-10-14 21:28 789在hibernate和spring时总结的一些知识,以供将来查 ... -
hiernate 集中管理session
2014-10-13 21:55 524问题: 使用hibern ... -
java写入txt文件
2014-05-22 23:10 1159File file = new File("d: ... -
定时器 quartz 和 spring
2014-04-17 23:30 522最近学习了一个quartz 和spring 的定时调度 这个 ... -
java 基于Struts2的 文件上传和下载
2014-04-03 22:56 566文件上传: 页面代码: <form action=' ... -
java IO
2014-03-23 23:23 446import java.io.BufferedReader ... -
自己写的一个JDBC工具类
2014-03-11 20:00 1202在最近的一段时间写毕业设计,由于本科阶段的毕业设计不是特别大的 ... -
java汉字数字转换成阿拉伯数字
2014-02-20 17:14 6606今天做一个日期转换的时候发现有些时间是用大写汉字写成的,需 ...
相关推荐
要实现"利用POI读取excel写入到word",我们需要以下步骤: 1. **准备环境**:首先,确保你的项目已经引入了Apache POI的依赖。在给定的压缩包中,"poi - 副本"可能是包含POI库的JAR文件,你需要将其添加到你的项目...
Apache POI提供了丰富的API,可以实现对Excel文件的复杂操作,如合并单元格、设置样式、处理公式等。在Android开发中,这些功能同样适用,但需要注意资源管理,因为Android设备的内存有限。 总的来说,Apache POI是...
标题中的“poi读取excel并输出到jsp页面”是指使用Apache POI库来处理Microsoft Excel文件,并将数据在JavaServer Pages (JSP) 页面上显示的技术。Apache POI 是一个开源项目,它允许开发者创建、修改和显示MS ...
android5使用poi读取excel,android5使用poi读取excel,android5使用poi读取excel,android5使用poi读取excel
Apache POI提供对Microsoft Office格式的全面支持,包括Excel的.xlsx格式。此精简版可能是为了减小Android应用的体积和提高性能,移除了不必要的部分,但仍保留了读取Excel文件的核心功能。 3. **aa-poi-ooxml-...
在“poi读取excel文件实例”中,我们将讨论如何使用Apache POI API来读取和操作Excel 2007文件。以下是一些关键知识点: 1. **创建工作簿对象**:首先,你需要通过`WorkbookFactory`类的`create()`方法打开或创建一...
本教程将详细讲解如何使用Apache POI库来读取Excel文件的内容。 首先,为了在Java项目中使用Apache POI,我们需要通过Maven进行依赖管理。在`pom.xml`文件中添加以下依赖: ```xml <groupId>org.apache.poi ...
标题提到的“poi读取Excel用到的jar包”指的是在Java项目中使用POI库进行Excel操作所需引入的依赖文件。这些jar包在描述中给出,包括了以下几个: 1. poi-ooxml-schemas-3.8-beta5-20111217.jar:这个文件包含了...
实现了JAVA 窗口,读取EXCEL文件,用poi读取EXCEL内容只是一个小例子
apache poi 读取 Excel 的 jar 包 博文链接:https://wxinpeng.iteye.com/blog/231895
本篇将详细讲解如何使用Apache POI读取Excel文件中的带格式数据。 首先,理解Apache POI的基本架构至关重要。POI提供了HSSF(Horrible Spreadsheet Format)用于处理老版本的.xls文件,而XSSF用于处理较新的.xlsx...
**POI读取Excel** 读取Excel主要涉及以下步骤: 1. **打开Workbook**:通过 FileInputStream 读取Excel文件,然后创建Workbook对象。 2. **获取Sheet**:从Workbook中获取需要的Sheet。 3. **遍历Row和Cell**:...
在这个例子中,我们主要关注如何使用POI读取Excel文件。以下是对给定代码的详细解释以及相关知识点: 1. **导入所需的库**: 首先,我们需要导入Apache POI相关的类,如`File`, `FileInputStream`, `IOException`,...
在这个场景中,我们将详细探讨如何使用Java POI读取Excel文件中的数据,包括获取总行数、列数、单元格内容、合并单元格、行高、列宽以及图片等信息。 首先,确保在项目中已经引入了Apache POI的依赖库。如果你使用...
在"poi读取excel并校验小例子"中,我们可能首先创建一个`XSSFWorkbook`实例来打开Excel文件,然后通过工作表索引获取对应的`XSSFSheet`对象。例如: ```java FileInputStream fis = new FileInputStream("example....
在这个"poi读取excel2007和2003兼容工具例子"中,我们将探讨如何使用POI来读取不同版本的Excel文件,特别是Excel 2003(.xls)和Excel 2007及更高版本(.xlsx)。 1. **Apache POI库**:Apache POI是Apache软件基金...
POI读取excel的例子
本文将深入探讨如何使用Java的Apache POI库来读取Excel文件,并处理其中合并单元格的数据,同时将这些数据存储到实体类中以供后续使用。 Apache POI是一个强大的库,允许程序员使用Java来创建、修改和显示Microsoft...
在Java编程环境中,如果你需要读取或写入Excel文件,POI 提供了强大的支持。本教程将深入讲解如何使用POI的HSSF组件来处理Excel 97-2003格式的文件(BIFF8格式)。 一、Excel基础 Excel 97 文件格式,也被称作BIFF8...
本篇将详细讲解如何利用Java的开源库Apache POI,结合反射机制,通过ExcelUtil工具类简化Excel读取的过程。 Apache POI是一个强大的库,它允许Java程序员创建、修改和展示MS Office格式的文件,包括Excel。在传统的...