`

POI

    博客分类:
  • Java
 
阅读更多
Java读写Excel之POI超入门 http://rensanning.iteye.com/blog/1538591
java的poi技术读取和导入Excel [非2010]http://www.cnblogs.com/hongten/archive/2012/02/22/java2poi.html
可以根据这个修改成2010的,里面有读取和创建
Apache POI组件操作Excel,制作报表(二) http://zjkilly.iteye.com/blog/870309
java 操作 excel 2010 http://blog.csdn.net/dallas16/article/details/6954264
poi excel 获取列名 http://skying007.iteye.com/blog/1680436
Excel导入异常Cannot get a text value from a numeric cell解决 http://blog.csdn.net/ysughw/article/details/9288307
POI颜色索引 http://www.cnblogs.com/xy2401/p/3295965.html

<dependencies>
        <dependency>
            <groupId>org.apache.poi</groupId>
            <artifactId>poi</artifactId>
            <version>3.10-beta2</version>
            <!--<version>3.9</version>-->
        </dependency>

        <dependency>
            <groupId>org.apache.xmlbeans</groupId>
            <artifactId>xmlbeans</artifactId>
            <version>2.6.0</version>
        </dependency>

        <dependency>
            <groupId>dom4j</groupId>
            <artifactId>dom4j</artifactId>
            <version>1.6.1</version>
        </dependency>

        <dependency>
            <groupId>org.apache.poi</groupId>
            <artifactId>ooxml-schemas</artifactId>
            <version>1.1</version>
        </dependency>
    </dependencies>

读取:
package com.pandy.excel;


import org.apache.poi.ss.usermodel.Cell;
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;

import java.io.FileInputStream;
import java.io.InputStream;
import java.util.List;
import java.util.Map;

/**
 * Created by pandy on 13-12-29.
 */
public class ExcelProcess {


    public void process(String path, Map<String, Object> paramters, int startRow, int endRow, int startCol, int endCol) {
        try {
            InputStream is = new FileInputStream("/mnt/E/a.xlsx");
            XSSFWorkbook workbook = new XSSFWorkbook(is);
            // 循环工作表Sheet
            for (int numSheet = 0; numSheet < workbook.getNumberOfSheets(); numSheet++) {
                XSSFSheet sheet = workbook.getSheetAt(numSheet);
                if (sheet == null) {
                    continue;
                }
                // 循环行Row
                for (int i = 0; i <= sheet.getLastRowNum(); i++) {
                    XSSFRow row = sheet.getRow(i);
                    if (row == null) {
                        continue;
                    }

                    int colNum = row.getLastCellNum();
                    for(int j=0; j<colNum; j++){
                        XSSFCell xh = row.getCell(j);
                        if (xh != null){
                            row.getCell(j).setCellType(Cell.CELL_TYPE_STRING);
                            System.out.print(xh.getStringCellValue()+"    ");
                        }
                    }
                    System.out.println("\n-----------------------------");

                }
            }
        } catch (Exception e) {
            e.printStackTrace();
        }
    }

    public static void main(String[] args) {
        ExcelProcess process = new ExcelProcess();
        process.process(null, null,0,0,0,0);
    }

}


修改:
别人的提示:修改文件最后还需要通过IO流操作来保存更改,这其实是很关键的一步,你代码里面没有IO的关闭操作,导致了数据的修改没有保存
private void outExcel(String path){
        try {
            InputStream is = new FileInputStream(path);
            XSSFWorkbook workbook = new XSSFWorkbook(is);
            //XSSFWorkbook workbook = new XSSFWorkbook(path);
            XSSFSheet sheet = workbook.createSheet("newSheet");

            XSSFRow firstrow = sheet.createRow(0);
            XSSFCell[] firstcell = new XSSFCell[3];
            String[] names = new String[]{"AAA","BBB","CCC"};
            for (int j = 0; j < 3; j++) {
                firstcell[j] = firstrow.createCell(j);
                firstcell[j].setCellValue(names[j]);
            }
            is.close();

            FileOutputStream fileOut = new FileOutputStream(path);
            workbook.write(fileOut);
            fileOut.close();


        } catch (Exception e) {
            e.printStackTrace();
        }
    }
分享到:
评论

相关推荐

    POI导出 POI导出 POI导出

    POI导出POI导出POI导出POI导出POI导出POI导出POI导出POI导出POI导出POI导出POI导出POI导出POI导出POI导出POI导出POI导出POI导出POI导出POI导出POI导出POI导出POI导出POI导出POI导出POI导出POI导出POI导出POI导出POI...

    poi全家桶ooxml-schemas/poi/poi-examples/poi-ooxml/poi-ooxml-schemas/poi-scratchpad

    标题中的"poi全家桶ooxml-schemas/poi/poi-examples/poi-ooxml/poi-ooxml-schemas/poi-scratchpad"提及的是Apache POI项目中的多个关键组件和目录结构。Apache POI是一个开源的Java库,专门用于读写Microsoft Office...

    POI poi相关所有jar包 poi jar包 poi最全jar包

    Apache POI 是一个开源项目,专门用于处理Microsoft Office格式的文件,如Excel(.xlsx、.xls)、Word(.doc、.docx)和PowerPoint(.ppt、.pptx)。这个压缩包包含了POI项目中所有必要的jar包,总计十二个,确保了...

    POI中文帮助文档_POI_

    Apache POI是一个开源项目,主要用于读取和写入Microsoft Office格式的文件,如Word(.doc/.docx)、Excel(.xls/.xlsx)和PowerPoint(.ppt/.pptx)。这个“POI中文帮助文档”提供了全面的指南,帮助开发者理解和...

    poi-3.17 poi-3.16

    Apache POI 是一个开源项目,专门用于处理微软的Office文档格式,如Excel、Word和PowerPoint。POI 提供了一套 Java API,使得开发者可以在Java应用程序中读写Microsoft Office格式的文件。标题中的"poi-3.17 poi-...

    poi的所有jar包,poi, poi-ooxml,poi-ooxml-schemas的各个版本jar

    这个压缩包包含了POI项目的几个核心组件的jar文件,包括基础的`poi`库,以及支持Open XML格式(OOXML)的`poi-ooxml`和`poi-ooxml-schemas`。这些jar包在Java开发中非常有用,尤其是当你需要在应用程序中读取、写入...

    poi-3.10.1上传组件jar包 po poi-ooxml poi-ooxml-schemas

    Apache POI 是一个开源项目,专门用于处理微软的Office文档格式,如Excel、Word和PowerPoint。这个"poi-3.10.1上传组件jar包"包含了处理这些文档所需的Java库,使得开发者可以在Java应用中创建、读取和修改Office...

    poi jar包 官网下载 最新poi官网资源

    关于poi ,Apache在今年,也就是在2017年9月15日 正式发布了POI 3.17版本, Apache POI团队对于3.17版本进行了一些功能的修复。主要是几个新的功能区域和许多错误修复。 POI 3.17是支持Java 6的最后一个版本。下一个...

    百度poi,高德poi数据数据免费下载

    在IT行业中,POI(Point of Interest)是一个重要的概念,主要指地图上的兴趣点,例如商业场所、公共服务设施、交通站点等。百度POI和高德POI是两大知名的中国地图服务提供商,它们提供了丰富的地理信息数据,为...

    poi-3.9、poi-ooxml-3.9、poi-ooxml-schemas-3.9

    Apache POI 是一个开源项目,专门用于处理微软的Office文档格式,如Excel、Word和PowerPoint。在Java编程环境中,Apache POI 提供了API,让开发者能够方便地读取、写入和修改这些文件。标题提到的"poi-3.9、poi-...

    poi导入到eclipse

    "poi导入到eclipse" 在本文中,我们将学习如何将poi导入到eclipse中,并搭建好eclipse环境项目,以便更深一步地学习Java读取Microsoft Office的文件。 首先,需要下载poi的jar包。截至本文发表,poi最新版本是...

    java对Excel的jar包poi-3.15,poi-3.16,poi-3.17

    Java中的Apache POI库是用于处理Microsoft Office格式文件的强大工具,特别是Excel(.xls和.xlsx)文件。在Java编程环境中,POI库提供了一种高效且灵活的方式来读取、写入和修改Excel文档。在提供的压缩包中,我们有...

    poi 的jar 包

    Apache POI 是一个开源项目,专门用于处理微软的Office文档格式,如Excel、Word和PowerPoint。POI 提供了一套 Java API,使得开发者可以在Java应用程序中读取、写入和修改这些文件。这里的"poi 的jar 包"指的是...

    小软件POI数据下载神器

    今天分享一个能够实现零代码获取高德地图POI数据的工具。 该工具当前版本号为v1.3,主要功能特点包括: 支持通过拉框多边形以及点选省或地级市的方式输入POI数据下载范围 支持多选输入POI数据类型,例如酒店住宿、...

    poi官方文档资料

    Apache POI 是一个开源项目,专门用于处理微软的Office文档格式,如Excel、Word和PowerPoint等。在本文中,我们将深入探讨Apache POI库,特别是它在处理Excel文件方面的能力。 Apache POI 提供了一个Java API,允许...

    poi3.17和poi4.0包含converter.jar

    Apache POI 是一个开源项目,专门用于处理Microsoft Office格式的文件,如Word(.doc、.docx)、Excel(.xls、.xlsx)等。在标题中提到的 "poi3.17和poi4.0包含converter.jar",指的是Apache POI的不同版本,其中...

    Apache POI for Android

    Apache POI 是一个著名的开源项目,主要为处理微软的Office文档格式提供了一个强大的Java API。在Android开发中,Apache POI 提供了处理Excel文件的能力,使得开发者可以在Android设备上进行Excel的读写操作,无需...

    poi-5.2.0-API文档-中文版.zip

    赠送jar包:poi-5.2.0.jar; 赠送原API文档:poi-5.2.0-javadoc.jar; 赠送源代码:poi-5.2.0-sources.jar; 赠送Maven依赖信息文件:poi-5.2.0.pom; 包含翻译后的API文档:poi-5.2.0-javadoc-API文档-中文(简体)版...

    poi-4.0.0 最新版poi jar包 for java

    Apache POI 是一个开源项目,专门用于处理微软的Office文档格式,如Excel、Word和PowerPoint。在Java环境中,Apache POI提供了一套API,使得开发者可以方便地创建、修改和读取这些文档。"poi-4.0.0 最新版poi jar包 ...

    poi3.14jar包

    Apache POI 是一个开源项目,专门用于处理微软的Office文档格式,如Excel、Word和PowerPoint。这个"poi3.14jar包"是Apache POI的3.14版本,是一个Java库,允许开发者在Java应用程序中创建、读取和修改Microsoft ...

Global site tag (gtag.js) - Google Analytics