精华内容
下载资源
问答
  • jxls 读取 excel

    2012-09-21 15:52:40
    // path 要读的Excel的路径 String xmlConfig = "readEXCEL.xml"; // xml文件名 try { // 构建xml文件输入流 InputStream in = this.getClass().getResourceAsStream("readEX...
    public List findXls(String path) {
    
    // path 要读的Excel的路径
    String xmlConfig = "readEXCEL.xml"; // xml文件名
    try {
    // 构建xml文件输入流
    InputStream in = this.getClass().getResourceAsStream("readEXCEL.xml");
    InputStream inputXML = new BufferedInputStream(in);

    // 绑定xml文件
    XLSReader mainReader = ReaderBuilder.buildFromXML(in);
    // 构建文件输入流
    InputStream inputXLS = new FileInputStream(path);
    // 通过低级流构建,高级流
    BufferedInputStream bis = new BufferedInputStream(inputXLS);
    Fixing fixing = new Fixing();
    List fixings = new ArrayList();
    Map beans = new HashMap();
    beans.put("fixing", fixing);
    beans.put("fixings", fixings);
    // 通过XSLReader 的read方法,它会自动映射pojo类,得到数据集合
    mainReader.read(bis, beans);
    return fixings;
    } catch (Exception ex) {
    ex.printStackTrace();
    }
    return null;
    } 程序执行 XLSReader mainReader = ReaderBuilder.buildFromXML(in);
    这句 报空指针异常 有人知道 是怎么回事吗
    展开全文
  • 官方给的 JXLS 读取 excel 文件的例子

    热门讨论 2011-08-30 22:25:50
    这是博客《官方给的 JXLS 读取 excel 文件的例子》配套示例,博客地址:http://blog.csdn.net/defonds/article/details/6733579。 下载后,将得到的所有依赖包导入项目即可运行。
  • jxls读取excel中所有的数据 代码很简单,但是io的异常问题比较多,方便阅读就直接抛出异常 下面是maven依赖(也就是jxls读取的依赖,多加了个lombok) <dependency> <groupId>net.sf.jxls</groupId...

    jxls读取excel中所有的数据

    代码很简单,但是io的异常问题比较多,方便阅读就直接抛出异常
    下面是maven依赖(也就是jxls读取的依赖,多加了个lombok)
            <dependency>
                <groupId>net.sf.jxls</groupId>
                <artifactId>jxls-reader</artifactId>
                <version>1.0.6</version>
            </dependency>
            <dependency>
                <groupId>org.jxls</groupId>
                <artifactId>jxls</artifactId>
                <version>2.4.1</version>
            </dependency>
            <dependency>
                <groupId>org.jxls</groupId>
                <artifactId>jxls-poi</artifactId>
                <version>1.0.13</version>
            </dependency>
            <dependency>
                <groupId>org.jxls</groupId>
                <artifactId>jxls-jexcel</artifactId>
                <version>1.0.6</version>
            </dependency>
            <dependency>
                <groupId>org.projectlombok</groupId>
                <artifactId>lombok</artifactId>
                <optional>true</optional>
            </dependency>
    
    测试的实体类Student(忽略了getter setter 构造等 推荐使用lombok)
    public class Student {
        private int id;
        private String name;
        private int age;
        private int math;
        private int chinese;
    }
    
    这个是我测试的表

    在这里插入图片描述

    最为关键的xml配置文件
    <?xml version="1.0" encoding="UTF-8"?>
    <workbook>
        <worksheet name="Sheet1">
            <!-- 没有loop包着的section是直接读取准确的行,这里为了不读取上面的标题,所以没有用mapping赋值参数 -->
            <section startRow="0" endRow="0"/>
            <loop items="studentList" var="student" varType="com.example.demo.gong.jxls.Student">
                <!-- 有loop包着的是循环获取,从当前行开始 -->
                <section startRow="1" endRow="1">
                    <mapping row="1" col="0">student.id</mapping>
                    <mapping row="1" col="1">student.name</mapping>
                    <mapping row="1" col="2">student.age</mapping>
                    <mapping row="1" col="3">student.math</mapping>
                    <mapping row="1" col="4">student.chinese</mapping>
                </section>
                <loopbreakcondition>
                    <rowcheck offset="0">
                        <cellcheck offset="0"></cellcheck>
                    </rowcheck>
                </loopbreakcondition>
            </loop>
        </worksheet>
    </workbook>
    
    xml文件是最关键的,可以自定义读取准确的单元数据,也可以循环读取,可以多尝试

    代码

    public class JXLSGetXls {
        public static void main(String[] args) throws IOException, SAXException, InvalidFormatException {
            //需要导出的参数的xls文件路径
            String path = "D:\\mission\\src\\main\\java\\com\\example\\demo\\gong\\jxls\\student.xls";
            //配置文件路径
            String xmlPath = "D:\\mission\\src\\main\\resources\\student.xml";
            InputStream inputXML = new BufferedInputStream(new FileInputStream(xmlPath));
            InputStream inputXLS = new BufferedInputStream(new FileInputStream(new File(path)));
            XLSReader mainReader = ReaderBuilder.buildFromXML(inputXML);
            //这个参数对应xml配置文件的参数
            List<Student> studentList = new ArrayList<>();
            Map<String, Object> beans = new HashMap<>();
            beans.put("studentList", studentList);
            //read是读取数据
            XLSReadStatus readStatus = mainReader.read(inputXLS, beans);
            //是否读取成功
            boolean statusOK = readStatus.isStatusOK();
            System.out.println("读取结果:" + statusOK);
            //测试结果
            for (Student stu : studentList) {
                System.out.println(stu);
            }
        }
    }
    

    简单说一些小坑

    	配置文件里面有两种读取,一个被loop包着还有一个是没有被loop包着的,像我这个表格第一行是属性名称,不是具体的参数,就可以用不被loop包着的section,然后starerow跟endrow都是0,相当于读取掉了这行数据,然后再开始就是读下面的
    	如果直接是全部数据的话,就不需要这样了
    

    小白记录一下,不对之处欢迎留言

    展开全文
  • 今天遇到奇葩的问题,在用jxls读取excel时配置都正确了,但读取不到数据,我以为是验证时把所有数据都砍掉了,但debug后发现是在读取的时候直接没有读到数据,也不报错。 找了好久才发现这个问题好蠢,根本原因是我...

      今天遇到奇葩的问题,在用jxls读取excel时配置都正确了,但读取不到数据,我以为是验证时把所有数据都砍掉了,但debug后发现是在读取的时候直接没有读到数据,也不报错。

       找了好久才发现这个问题好蠢,根本原因是我excel文件表单正文第一个单元格是空的,

     jxls在验证结束时是遇到空格就结束

               <loopbreakcondition>
                    <rowcheck offset="0">  
                    </rowcheck>
                </loopbreakcondition>

    解决办法

       (1) 将excel每条记录的第一个单元格设置成不能为空

      (2)在验证代码的时候设置结束符,如:

     <cellcheck offset="0">
               #         
      </cellcheck>

    在每一个excel文件最后加上#,这样也能解决

    展开全文
  • JXLS-----JXLS读取Excel实例

    千次阅读 2015-07-29 17:37:11
  • jXLS 提供 jxls-reader 模块用来读取 XLS 文件并且用读来的表格数据填充 Java bean。使用 jXLS 来解析 cxcel 文件并使用读来的数据填充 Java 对象我们首先要创建一个 XLSReader 对象。要创建这个对象,最简单的方法...
  • 今天用jxls导入Exceljxls-reader-1.0.jar下有个DateConverter 类,并且实现的是commons-beanutils.jar下的Converter,我用的是springside3,filter获取参数,在没有导入Excel时,页面查询的时候,debug走的是...
  • Hi,我正在使用[jxls](http://jxls.sourceforge.net/index.html)实现导入excel的功能。但现在遇到一个很棘手的问题:`jxls`在遇到长度超过10位的数字时,如`12345678912`,会将其转成`1.2345678E10`。 有没有什么...
  • jxls导入Excel(即读取Excel中的数据)

    千次阅读 2017-08-25 13:39:03
    jxls
  • jxls读取模板导出Excel学习笔记

    千次阅读 2017-05-12 09:19:31
    jxls读取模板导出Excel学习笔记​ jxls是一个简单的、轻量级的excel导出库,使用特定的标记在excel模板文件中来定义输出格式和布局。除此以外,java中成熟的excel导出工具有poi、jxl,但他们都是使用java代码的方式...

空空如也

空空如也

1 2 3 4 5 ... 17
收藏数 332
精华内容 132
热门标签
关键字:

jxls读取excel