java easyreport 导入excel、 txt 数据行列索引(四)

姓名年龄科目分数教师姓名教师性别
王老五12语文80张三丰

我们要求导入数据中不包含科目和分数。


导入demo TestExcelIndex类

package example;


import java.io.File;

import java.io.FileInputStream;

import java.util.List;

import java.util.Map;


import model.Student;

import test.AbstractExcelTest;


import com.easyReport.read.temp.PropertyTemp;

import com.easyReport.read.temp.ReadTemp;


import formater.SexFormater;


public class TestExcelIndex extends AbstractExcelTest<Student> {

@Override

public void test() {

FileInputStream fileInputStream;

try {

fileInputStream = new FileInputStream(new File("testFile/test4.xls"));

testReadBean(fileInputStream);

// testReadMap(fileInputStream);

fileInputStream.close();

} catch (Exception e) {

e.printStackTrace();

}

}


@Override

protected ReadTemp bulidReadTemp() {

ReadTemp readTemp = new ReadTemp(1);

readTemp.addPropertyTemp(new PropertyTemp("姓名", "name"));

readTemp.addPropertyTemp(new PropertyTemp("年龄", "age"));

readTemp.addPropertyTemp(new PropertyTemp("教师姓名", "teachers.name",4));

readTemp.addPropertyTemp(new PropertyTemp("教师性别", "teachers.sex",new SexFormater()));

return readTemp;

}


@Override

protected void writeBeanList(List<Student> modelLists) {

System.out.println("--------------bean---------------");

for (Student s : modelLists) {

System.out.println(s.getName() + "|"

+ s.getAge()+"|"+s.getTeachers().get(0));

}

}


@Override

protected void writeMapList(List<Map<String, Object>> mapLists) {

System.out.println("--------------map---------------");

for (Map<String, Object> m : mapLists) {

System.out.println(m.get("name") + "|" + m.get("age")+

"|"+m.get("teachers.name")+"|"+m.get("teachers.sex"));

}

}


}

运行结果:

--------------bean---------------

王老五|12|张三丰|M


readTemp.addPropertyTemp(new PropertyTemp("教师姓名", "teachers.name",4));

PropertyTemp构造方法可指定单元格索引,默认为0

public PropertyTemp(String title, String propertyName, Integer cellIndex) {

super();

this.title = title;

this.propertyName = propertyName;

this.cellIndex = cellIndex;

}

readTemp.addPropertyTemp(propertyTemp);

每添加一个属性模板,若没有指定索引值,单元格索引值自动加一,若指定索引值小于等于前面单元格索引,还是会自动加1。

ReadTemp readTemp = new ReadTemp(1);

指定读取行索引为1,即从第2行开始读取数据,不指定默认为0。





本文出自 “菜鸟博博” 博客,请务必保留此出处http://zhangxiao2.blog.51cto.com/6342789/1586568

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。