23 读取excel

    /**
     index    mappingname            originalname        datatype        family
     0        task_id                taskIndexCode        STRING            info
     1        task_type            resourceDescType    INT32            info
     2        camera_index_code    cameraIndexCode        STRING            info
     3        camera_address        resourceLocation    STRING            info
     * @param path
     * @return
     * @throws IOException
     */
    public static List<String> readHbaseXlsx(String path) throws IOException {

        InputStream is = new FileInputStream(path);

        XSSFWorkbook xssfWorkbook = new XSSFWorkbook(is);

        List<String> jsonList = new ArrayList<>();

        int sheetNum = xssfWorkbook.getNumberOfSheets();

        // Read the Sheet
        for (int numSheet = 0; numSheet < sheetNum; numSheet++) {

            XSSFSheet xssfSheet = xssfWorkbook.getSheetAt(numSheet);

            if (xssfSheet == null) {

                continue;
            }
            // Read the Row
            for (int rowNum = 1; rowNum <= xssfSheet.getLastRowNum(); rowNum++) {

                XSSFRow xssfRow = xssfSheet.getRow(rowNum);

                if (xssfRow != null) {

                    XSSFCell indexCell = xssfRow.getCell(0);

                    if (indexCell == null) continue;

                    XSSFCell mappingnameCell = xssfRow.getCell(1);

                    XSSFCell originalnameCell= xssfRow.getCell(2);

                    XSSFCell datatypeCell = xssfRow.getCell(3);

                    XSSFCell familyCell = xssfRow.getCell(4);

                    String index=indexCell.getStringCellValue();
                    String originalname;
                    try {
                        originalname=originalnameCell.getStringCellValue();
                    }catch (NullPointerException e){
                        originalname="";
                    }
                    if(null==originalname){
                        originalname="";
                    }
                    String mappingname=mappingnameCell.getStringCellValue();
                    String datatype=datatypeCell.getStringCellValue();
                    String family=familyCell.getStringCellValue();

                    String json=index+","+originalname+","+mappingname+","+datatype+","+family;
                    jsonList.add(json);

                }
            }

            xssfWorkbook.cloneSheet(numSheet);
        }

        is.close();

        return jsonList;
    }
    /**
     index    mappingname            originalname        datatype        family
     0        task_id                taskIndexCode        STRING            info
     1        task_type            resourceDescType    INT32            info
     2        camera_index_code    cameraIndexCode        STRING            info
     3        camera_address        resourceLocation    STRING            info
     * @param path
     * @return
     * @throws IOException
     */
    public static List<String> readEsXlsx(String path) throws IOException {

        InputStream is = new FileInputStream(path);

        XSSFWorkbook xssfWorkbook = new XSSFWorkbook(is);

        List<String> jsonList = new ArrayList<>();

        int sheetNum = xssfWorkbook.getNumberOfSheets();

        // Read the Sheet
        for (int numSheet = 0; numSheet < sheetNum; numSheet++) {

            XSSFSheet xssfSheet = xssfWorkbook.getSheetAt(numSheet);

            if (xssfSheet == null) {

                continue;
            }
            // Read the Row
            for (int rowNum = 1; rowNum <= xssfSheet.getLastRowNum(); rowNum++) {

                XSSFRow xssfRow = xssfSheet.getRow(rowNum);

                if (xssfRow != null) {

                    XSSFCell indexCell = xssfRow.getCell(0);

                    if (indexCell == null) continue;

                    XSSFCell mappingnameCell = xssfRow.getCell(1);

                    XSSFCell originalnameCell= xssfRow.getCell(2);

                    XSSFCell datatypeCell = xssfRow.getCell(3);

                    String index=indexCell.getStringCellValue();
                    String originalname;
                    try {
                        originalname=originalnameCell.getStringCellValue();
                    }catch (NullPointerException e){
                        originalname="";
                    }
                    if(null==originalname){
                        originalname="";
                    }
                    String mappingname=mappingnameCell.getStringCellValue();
                    String datatype=datatypeCell.getStringCellValue();

                    String json=index+","+originalname+","+mappingname+","+datatype;
                    jsonList.add(json);

                }
            }

            xssfWorkbook.cloneSheet(numSheet);
        }

        is.close();

        return jsonList;
    }

    /**
     * @param xssfRow excel cell
     * @return 单元格数据
     * @Method Description 2010excel单元格的数据,单元格数据分为:Boolean、numeric、string
     */
    private static Object getValue(XSSFCell xssfRow) {

        if (xssfRow.getCellType() == xssfRow.CELL_TYPE_BOOLEAN) {

            return xssfRow.getBooleanCellValue();

        } else if (xssfRow.getCellType() == xssfRow.CELL_TYPE_NUMERIC) {

            return xssfRow.getNumericCellValue();

        } else {

            return xssfRow.getStringCellValue();

        }
    }

写字符串到文件中

public static Boolean writeStringToFile(String filePath,String str){
        Boolean success=true;
        if(!new File(filePath).exists()){
            try {
                new File(filePath).createNewFile();
            } catch (IOException e) {
                e.printStackTrace();
            }
        }else{
            new File(filePath).delete();
            try {
                new File(filePath).createNewFile();
            } catch (IOException e) {
                e.printStackTrace();
            }
        }
        FileWriter fileWriter = null;
        try {
            fileWriter=new FileWriter(filePath);
        } catch (IOException e) {
            e.printStackTrace();
        }
        if(null!=fileWriter) {
            try {
                fileWriter.write(str);
            } catch (IOException e) {
                e.printStackTrace();
            }finally {
                try {
                    fileWriter.close();
                } catch (IOException e) {
                    e.printStackTrace();
                }
            }
        }
        return success;
    }
时间: 2024-08-07 04:20:49

23 读取excel的相关文章

使用Apache下poi创建和读取excel文件

一:使用apache下poi创建excel文档 1 @Test 2 /* 3 * 使用Apache poi创建excel文件 4 */ 5 public void testCreateExcel() { 6 // 1:创建一个excel文档 7 HSSFWorkbook workbook = new HSSFWorkbook(); 8 // 2:创建一个sheet工作表,名为“学生成绩” 9 HSSFSheet sheet = workbook.createSheet("学生成绩");

R中读取EXCEL 数据的方法

最近初学R语言,在R语言读入EXCEL数据格式文件的问题上遇到了困难,经过在网上搜索解决了这一问题,下面归纳几种方法,供大家分享: 第一:R中读取excel文件中的数据的路径: 假定在您的电脑有一个excel文件,原始的文件路径是:D:\work\data\1 如果直接把这个路径拷贝到R中,就会出现错误,原因是: \是escape character(转义符),\\才是真正的\字符,或者用/ 因此,在R中有两种方法读取该路径: 1:在R中输入一下路径:D:\\work\\data\\1     

PHP读取Excel文件内容

PHP读取Excel文件内容 项目需要读取Excel的内容,从百度搜索了下,主要有两个选择,第一个是PHPExcelReader,另外一个是PHPExcel. PHPExcelReader比较轻量级,仅支持Excel的读取,实际上就是一个Reader.但是可惜的是不能够支持Excel 2007的格式(.xlsx). PHPExcel比较强大,能够将内存中的数据输出成Excel文件,同时还能够对Excel做各种操作,下面主要介绍下如何使用PHPExcel进行Excel 2007格式(.xlsx)文

C#读取excel文件,生成json

这段时间在做一个数据管理系统,需要读取excel表格,组装json,最终存入mongodb,这里记录一下解决思路. 需要做的准备工作: 1.安装AccessDatabaseEngine 下载地址:https://products.office.com/zh-cn/compare-all-microsoft-office-products?tab=1 有32bit和64bit两个版本,具体要安装哪个要看你的Office程序是32bit的还是64bit的.通常来讲,一般是选择与office程序相对应

NPOI读取Excel,导入数据到Excel练习01

NPOI 2.2.0.0,初级读取导入Excel 1.读取Excel,将数据绑定到dgv上 1 private void button1_Click(object sender, EventArgs e) 2 { 3 List<Book> books = new List<Book>(); 4 //1.读取Excel文件 5 using (FileStream fsReder = File.OpenRead("练习.xlsx")) 6 { 7 //2.创建工作簿

java的poi技术读取Excel[2003-2007,2010]

这篇blog主要是讲述java中poi读取excel,而excel的版本包括:2003-2007和2010两个版本, 即excel的后缀名为:xls和xlsx. 读取excel和MySQL相关: java的poi技术读取Excel数据到MySQL 你也可以在 : java的poi技术读取和导入Excel了解到写入Excel的方法信息 使用JXL技术 :java的jxl技术导入Excel  下面是本文的项目结构: 项目中所需要的jar文件: 所用的Excel数据(2003-2007,2010都是一

POI 读取 Excel 转 HTML 支持 03xls 和 07xlsx 版本 包含样式

工作需求: 提供EXCEL模板上传后预览:EXCEL解析成终端风格HTML. 处理方案: POI解析EXCEL,预览时尽量获取原有表格的样式:终端使用EXCEL解析的无样式HTML,然后通过jQuery添加CSS样式 遇到问题: CSDN上大牛处理03版xls格式的有成功例子:但是07版xlsx格式的样式处理未找到理想中的例子 下文是参考大牛的例子整理后的程序 供参考! EXCEL表格07xlsx格式 通过POI解析带样式的效果 项目JAR文件注意版本 JAVA 1 package com.hb

java的poi技术读取Excel数据

这篇blog主要是讲述java中poi读取excel,而excel的版本包括:2003-2007和2010两个版本, 即excel的后缀名为:xls和xlsx. 读取excel和MySQL相关: java的poi技术读取Excel数据到MySQL 你也可以在 : java的poi技术读取和导入Excel了解到写入Excel的方法信息 使用JXL技术 :java的jxl技术导入Excel  下面是本文的项目结构: 项目中所需要的jar文件: 所用的Excel数据(2003-2007,2010都是一

java的poi技术读取Excel数据到MySQL

这篇blog是介绍java中的poi技术读取Excel数据,然后保存到MySQL数据中. 你也可以在 : java的poi技术读取和导入Excel了解到写入Excel的方法信息 使用JXL技术可以在 :java的jxl技术导入Excel  项目结构: Excel中的测试数据: 数据库结构: 对应的SQL: 1 CREATE TABLE `student_info` ( 2 `id` int(11) NOT NULL AUTO_INCREMENT, 3 `no` varchar(20) DEFAU