您的位置:首页 > 编程语言 > Java开发

java 导出List<T>数据 为 exsl文件

2014-03-17 13:59 429 查看
public static void exportXLS(List<SLResult> dataList, String fileName,String tabname,int id) {
WritableWorkbook wwb = null;
try {
// 首先要使用Workbook类的工厂方法创建一个可写入的工作薄(Workbook)对象
wwb = Workbook.createWorkbook(new File(fileName + ".xls"));
} catch (IOException e) {
e.printStackTrace();
}
if (wwb != null) {
// 创建一个可写入的工作表
// Workbook的createSheet方法有两个参数,第一个是工作表的名称,第二个是工作表在工作薄中的位置
WritableSheet ws = wwb.createSheet(tabname, id);

// 下面开始添加单元格
String[] topic = { "id", "latitude", "longitude", "loc_Desc", "locTime" };
for (int i = 0; i < topic.length; i++) {
Label labelC = new Label(i, 0, topic[i]);
try {
// 将生成的单元格添加到工作表中
ws.addCell(labelC);
} catch (RowsExceededException e) {
e.printStackTrace();
} catch (WriteException e) {
e.printStackTrace();
}
}
SLResult model;
ArrayList<String> li;
for (int i = 0; i < dataList.size(); i++) {
model = dataList.get(i);
li = new ArrayList<String>();
li.add(i+1+"");
li.add(model.getLatitude());
li.add(model.getLongitude());
li.add(model.getLoc_Desc());
li.add(model.getLocTime());
int k = 0;
for (String l : li) {
Label labelC = new Label(k, i + 1, l);
k++;
try {
// 将生成的单元格添加到工作表中
ws.addCell(labelC);
} catch (RowsExceededException e) {
e.printStackTrace();
} catch (WriteException e) {
e.printStackTrace();
}
}
li = null;
}
}
try {
// 从内存中写入文件中
wwb.write();
// 关闭资源,释放内存
wwb.close();
} catch (IOException e) {
e.printStackTrace();
} catch (WriteException e) {
e.printStackTrace();
}
Log.i("com.example.tianyidemo", "-------------保存exsl数据-----------------");
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: