Android 数据导出之Excle jxl.jar
16lz
2021-01-23
很久没写Android代码了。
使用jxl导出excle数据
首先项目得导入jxl.jar
以下是导出方法:
// 导出数据public void export(ArrayList<Account> list) {Calendar c = Calendar.getInstance();String filename = Integer.toString(c.get(Calendar.YEAR))+ Integer.toString(c.get(Calendar.MONTH + 1))+ Integer.toString(c.get(Calendar.DAY_OF_MONTH));int random = (int) (Math.random() * 1000);WritableWorkbook wwb = null;try {// 首先要使用Workbook类的工厂方法创建一个可写入的工作薄(Workbook)对象wwb = Workbook.createWorkbook(new File(Environment.getExternalStorageDirectory()+ "/"+ filename+ "_"+ random + ".xls"));} catch (IOException e) {e.printStackTrace();}if (wwb != null) {// 创建一个可写入的工作表// Workbook的createSheet方法有两个参数,第一个是工作表的名称,第二个是工作表在工作薄中的位置WritableSheet ws = wwb.createSheet("工作表名称", 0);// 下面开始添加单元格String[] topic = { "序号", "金额", "项目", "时间", "支付方式", "商家/支付方", "成员","备注", "类别" };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();}}Account account;ArrayList<String> li;for (int j = 0; j < list.size(); j++) {account = list.get(j);li = new ArrayList<String>();li.add(Integer.toString(account.get_id()));li.add(Float.toString(account.getMoney()));li.add(account.getCategory().toString());li.add(account.getDatetime().toString());li.add(account.getMethod().toString());li.add(account.getMerchant().toString());li.add(account.getMumber().toString());li.add(account.getDescript().toString());li.add(account.getWhat().toString());System.out.println(li.size());int k = 0;for (String l : li) {Label labelC = new Label(k, j + 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();}}
使用该方法能够对数据进行导出。
更多相关文章
- Android SDK4.0 离线安装方法
- Android 使用Json实现服务器与客户端数据的交互
- Android 全屏显示的两种方法
- Android中设置文本颜色的三种方法
- Android P(api28) 不支持 http 协议解决方法
- 三步搞定:Vue.js调用Android原生方法
- android 防止键盘弹出的简单方法
- Android高手进阶教程(十七)之---Android中Intent传递对象的两种
- Android的消息机制,用Android线程间通信的Message机制,Android中Ha