`

java读Excel2003和2007

阅读更多
首先要去http://poi.apache.org/download.html下载poi包 下最新的就可以。
附件里也有,是3.9版本的。可以读取2003 和2007的excel.具体的代码在下面.


public static void importUser(File file,UserService userService) throws Exception{
        if(file.getName().endsWith("xlsx")){
            importUser2007(file,userService);
        }else if (file.getName().endsWith("xls")){
            importUser2003(file,userService);
        }
    }


private static void importUser2003(File file,UserService userService) throws Exception{
        FileInputStream fs = null;
        try {
            fs = new FileInputStream(file);
        } catch (FileNotFoundException e) {
            e.printStackTrace();
            return;
        }
        // 创建对Excel工作簿文件的引用
        HSSFWorkbook workbook = ExcelTool.getWorkbook(fs);
        //获取sheet数
        int sheetNum = ExcelUtils.getNumberOfSheets(workbook);
        /**
         * 遍历excle的每一个工作薄
         */
        for (int numSheets = 0; numSheets < sheetNum; numSheets++) {
            if (null != workbook.getSheetAt(numSheets)) {
                //获得一个sheet
                HSSFSheet aSheet = ExcelTool.getSheetAt(workbook, numSheets);
                int lastRowNum = ExcelUtils.getLastRowNum(aSheet);
                if(lastRowNum == 0)continue;

                int startRow = 2;//第一行是行头,所以直接取第二行
                for (int rowNumOfSheet = startRow; rowNumOfSheet <= lastRowNum; rowNumOfSheet++) {
                    User user = new User();
                    HSSFRow aRow = aSheet.getRow(rowNumOfSheet);

                    String name = "" ;
                    HSSFCell docIdCell = ExcelTool.getCell(aRow, 0);
                    if (null != docIdCell) {
                        String cellStrValue = ExcelUtils.getCellStrValue(docIdCell);
                        name = cellStrValue;
                    }
                    user.setName(name);
                    String age = "0";
                    HSSFCell ageCell = ExcelTool.getCell(aRow, 1);
                    if (null != ageCell) {
                        String cellStrValue = ExcelUtils.getCellStrValue(ageCell);
                        age = cellStrValue;
                    }

                    userService.addUser(user);//增加用户
                }
            }
        }
    }


private static void importUser2007(File file,UserService userService) throws Exception{
        FileInputStream fs = null;
        try {
            fs = new FileInputStream(file);
        } catch (FileNotFoundException e) {
            e.printStackTrace();
            return;
        }
        // 创建对Excel工作簿文件的引用
        XSSFWorkbook workbook = new XSSFWorkbook(fs);
        //获取sheet数
        int sheetNum = ExcelUtils.getNumberOfSheets(workbook);
        /**
         * 遍历excle的每一个工作薄
         */
        for (int numSheets = 0; numSheets < sheetNum; numSheets++) {
            if (null != workbook.getSheetAt(numSheets)) {
                //获得一个sheet
                XSSFSheet aSheet = workbook.getSheetAt(numSheets);
                int lastRowNum = ExcelUtils.getLastRowNum(aSheet);
                if(lastRowNum == 0)continue;

                int startRow = 2;//第一行是行头,所以直接取第二行
                for (int rowNumOfSheet = startRow; rowNumOfSheet <= lastRowNum; rowNumOfSheet++) {
                    User user = new User();
                    XSSFRow aRow = aSheet.getRow(rowNumOfSheet);

                    String name = "" ;
                    XSSFCell docIdCell = aRow.getCell(0);
                    if (null != docIdCell) {
                        String cellStrValue = ExcelUtils.getCellStrValue(docIdCell);
                        name = cellStrValue;
                    }
                    user.setName(name);
                    String age = "0";
                    XSSFCell ageCell = aRow.getCell(1);
                    if (null != ageCell) {
                        String cellStrValue = ExcelUtils.getCellStrValue(ageCell);
                        age = cellStrValue;
                    }

                    userService.addUser(user);//增加用户
                }
            }
        }
    }
  • 大小: 23.8 KB
  • 大小: 6.4 KB
分享到:
评论

相关推荐

    java 读excel 写excel 边度边写excel

    使用Apache POI,可以创建一个`HSSFWorkbook`(针对.xls文件,Excel 97-2003格式)或`XSSFWorkbook`(针对.xlsx文件,Excel 2007及更高版本)对象来读取Excel文件。例如: ```java FileInputStream fis = new ...

    java处理2003和2007Excel读写加密源码

    在Java编程环境中,处理2003和2007版本Excel文件的读写操作是一项常见的任务,尤其当涉及到加密的Excel文件时,这需要特殊的技术处理。2003版Excel使用的是BIFF8格式,而2007版及更高版本则采用Office Open XML...

    java读excel文件

    Excel文件主要分为两种类型:`.xls`(老版本,Microsoft Excel 97-2003)和`.xlsx`(新版本,Microsoft Excel 2007及以上)。`jxl.jar`库主要用于处理`.xls`格式的文件,对于`.xlsx`格式,你需要使用其他库如Apache ...

    Java读取Excel内容

    Java读取Excel内容 v Java读取Excel内容 Java读取Excel内容

    Java读取Excel表格中的日期

    ### Java读取Excel表格中的日期 #### 背景与问题描述 在处理Excel文件时,经常遇到的一个问题是如何正确地识别并处理日期格式的数据。这是因为Excel中的日期格式较为复杂,有时甚至会出现不同版本的Excel文件中...

    java读取excel简单例子

    jxl是一个流行的、免费的Java库,用于读取和写入Microsoft Excel格式的文件。在这个简单的例子中,我们将探讨如何使用jxl.jar来读取Excel数据,这对于初学者来说是一个很好的起点。 首先,你需要将jxl.jar添加到你...

    java 导入Excel 文件,支持xls、xlsx、csv格式

    在Java编程中,导入Excel文件是一项常见的任务,特别是在数据处理和数据分析领域。为了支持不同版本的Excel文件以及CSV格式的数据,开发者需要了解并掌握相关的API和技术。以下将详细讲解如何在Java中处理`xls`、`...

    Npoi读取excel2003和2007到datatable

    Npoi是一个非常流行的开源库,它允许开发者在C#和Java中操作Microsoft Office文件,包括Excel 2003 (.xls) 和 Excel 2007 (.xlsx) 格式。本篇将详细讲解如何使用Npoi将这两种格式的Excel文件读取到DataTable中,以及...

    java读取excel数据!

    以上就是使用Java和Apache POI库读取Excel数据的基本步骤。如果你的压缩包文件"ExcelWrite"包含示例代码或模板,你可以参照上述步骤理解并运行这些代码,以实现从Excel文件读取数据并进行操作的功能。在实际开发中,...

    java实现Excel的读取

    java实现对Excel的读取,并保存到数据库中!代码简洁有注释!!!

    java读Excel和下载Excel以及生成Excel

    根据给定的信息,我们可以整理出以下几个关键的知识点: ### 一、Java读取Excel文件 ...以上是关于Java中处理Excel文件的一些基础知识点,包括读取、生成和下载Excel文件的方法。希望这些信息对你有所帮助。

    java POI读取2003 2007 Excel

    这个库使得Java开发者能够创建、修改和显示Excel文件,无论是2003版本还是2007版本的XLS或XLSX格式。本文将深入探讨如何使用Java POI读取2003和2007版的Excel文件。 首先,你需要在项目中引入POI相关的jar包。通常...

    ExcelDemo_Excel导出_下载_POI读excel_JXL读写excel_java读写excel_列宽_读取合并或拆分单元格内容

    本文将深入探讨Java编程语言中如何使用Apache POI库和JExcelAPI(JXL)来读取、写入及操作Excel文件,同时也包括设置列宽以及处理合并或拆分的单元格内容。 首先,Apache POI是Apache软件基金会的一个开源项目,专...

    EXCEL文件导入:JAVA读取Excel

    Java作为一种广泛应用的企业级编程语言,提供了多种工具和技术来实现Excel文件的读写功能。其中,Apache POI是一个非常流行的Java库,用于读写Microsoft Office格式文件,特别是Excel。 ##### 二、Apache POI介绍 ...

    JAVA按指定格式导出为EXCEL和读EXCEL的内容

    在我们的示例中,主要使用的是HSSF(Horrible Spreadsheet Format)和XSSF(XML Spreadsheet Format),分别用于处理.xls(Excel 97-2003)和.xlsx(Excel 2007及以上版本)文件。 首先,让我们深入了解如何导出...

    java读excel

    java读2003excel文件,通过poi读取excel文件的java代码

    JAVA_读取excel的数据

    public static void readExcel2003(String fileName) { Connection conn = null; Statement stmt = null; CallableStatement cs = null; try { Class.forName("oracle.jdbc.driver.OracleDriver").new...

    java读取excel多个sheet内容,用流的方式判断excel版本

    用poi读取excel多个sheet内容,用流的方式判断excel的版本,2003,还是2007版本,并附带所需jar包,文件下载后解压,直接导入eclipse中即可使用

    java读取excel及导出excel文件

    这里,我们将详细探讨如何使用Java来读取和导出Excel文件,主要涉及的技术包括Apache POI库和其他相关API的使用。 首先,Apache POI是一个流行的开源Java API,它允许开发人员创建、修改和显示Microsoft Office格式...

    Java操作Excel(jxl.jar)

    总结来说,jxl.jar库是Java操作Excel的一个实用工具,它提供了丰富的API来读取、修改和创建Excel文件。通过熟练掌握这个库,开发者可以方便地在Java应用程序中集成Excel相关的功能,进行数据处理和报告生成等工作。...

Global site tag (gtag.js) - Google Analytics