Android向Excel写入数据导出U盘并发送邮件

本文实例为大家分享了Android向Excel写入数据导出并发送邮件的具体代码,供大家参考,具体内容如下

创建Execl、写入Excel格式

public WriteExcel(Context mContext){
 this.mContext = mContext;
}

// 创建excel表
public void createExcel(File file) {
 deleteExcel(file);
 WritableSheet ws = null;
 try {
 if (!file.exists()) {
  wwb = Workbook.createWorkbook(file);//创建表
  ws = wwb.createSheet("sheet1", 0);//表名 页数

  // 在指定单元格插入数据
  Label lbl1 = new Label(0, 0, "标签1");
  Label lbl2 = new Label(1, 0, "标签2");
  Label lbl3 = new Label(2, 0, "标签3");
  Label lbl4 = new Label(3, 0, "标签4");

  ws.addCell(lbl1);
  ws.addCell(lbl2);
  ws.addCell(lbl3);
  ws.addCell(lbl4);

  // 从内存中写入文件中
  wwb.write();
  wwb.close();
 }

 } catch (Exception e) {
 e.printStackTrace();
 }
}

/**向Execl写入数据
* @Param ls List<map>数据
* @Param emeailPath
* @Param file
*/
public void writeToExcel(List<Map<String,Object>> ls,String emeailPath,File file) {

 try {
 Workbook oldWwb = Workbook.getWorkbook(file);
 wwb = Workbook.createWorkbook(file, oldWwb);
 WritableSheet ws = wwb.getSheet(0);
 // 当前行数
 for (int i = 0; i < ls.size(); i++) {
  int row = ws.getRows();
  Label lab1 = new Label(0, row, ls.get(i).get("数据1") + "");
  Label lab2 = new Label(1, row, ls.get(i).get("数据2") + "");
  Label lab3 = new Label(2, row, ls.get(i).get("数据3") + "");
  Label lab4 = new Label(3, row, ls.get(i).get("数据4") + "");
  ws.addCell(lab1);
  ws.addCell(lab2);
  ws.addCell(lab3);
  ws.addCell(lab4);
 }
 // 从内存中写入文件中,只能刷一次
  wwb.write();
  wwb.close();
  if (emeailPath != null) {
  postEmail(emeailPath);
  }else{
  final ProgressDialog precentDialog=new ProgressDialog(mContext);
  precentDialog.setMessage("导出U盘中...");
  precentDialog.setMax(100);
  precentDialog.setCanceledOnTouchOutside(false);
  precentDialog.show();
  new Thread(){
   public void run() {
   //等待进度条
   for (int i = 0; i < 100; i++) {
    try {
    long l= (long) (Math.random()*200);
    Thread.sleep(l);
    } catch (InterruptedException e) {
    e.printStackTrace();
    }
    precentDialog.setProgress(i);
   }
   precentDialog.dismiss();
   handler.sendEmptyMessage(1);
   };
  }.start();
  }
 }catch(Exception e){
  e.printStackTrace();
 }
}

@SuppressLint("HandlerLeak")
private Handler handler = new android.os.Handler() {
 @Override
 public void handleMessage(Message msg) {
 // TODO Auto-generated method stub
 super.handleMessage(msg);
 Toast.makeText(mContext,"导入U盘完成!",Toast.LENGTH_SHORT).show();
 }
};

//删除文件夹
private void deleteExcel(File file){
 if(file.exists()){
  file.delete();
 }
}

检测U盘、制作Excel表格

private void postEmail(String emailPath){

  SimpleDateFormat fmat=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
  String time=fmat.format(new Date(System.currentTimeMillis()));

  String path=getExcelDir()+ File.separator+"IdCardInfo.xls";
  File file = new File(path);
  if(file.exists()){
   Intent email = new Intent(android.content.Intent.ACTION_SEND);
   email.setType("application/octet-stream");
    //邮件接收者(数组,可以是多位接收者)
    String[] emailReciver = new String[]{emailPath};

    String emailTitle = "信息_"+time;
    String emailContent = "核验信息";
    //设置邮件地址
    email.putExtra(android.content.Intent.EXTRA_EMAIL, emailReciver);
    //设置邮件标题
    email.putExtra(android.content.Intent.EXTRA_SUBJECT, emailTitle);
    //设置发送的内容
    email.putExtra(android.content.Intent.EXTRA_TEXT, emailContent);
    //附件
    email.putExtra(Intent.EXTRA_STREAM, Uri.fromFile(file));
   //调用系统的邮件系统
    mContext.startActivity(Intent.createChooser(email, "请选择邮件发送软件"));
  }
}

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。

(0)

相关推荐

  • Android开发实现的导出数据库到Excel表格功能【附源码下载】

    本文实例讲述了Android开发实现的导出数据库到Excel表格功能.分享给大家供大家参考,具体如下: 之前一直在电脑上用Excel表格记录家庭帐单,不久前重装系统不小心干掉了,伤心了好久,那可是我记了五年的帐单呀!这段时间用的是随手记,好用但是不太符合我的习惯,所以我自己写了一个小小的帐单记录APP,App小到只有一个Activity.当然更多的需求我正在研发中,呵呵!现在已经完成了把每天记录的数据保存到Sqilte数据库中,然后可以导出到excel表格.代码也是借助网上的一些资料写成的,代码

  • Android向Excel写入数据导出U盘并发送邮件

    本文实例为大家分享了Android向Excel写入数据导出并发送邮件的具体代码,供大家参考,具体内容如下 创建Execl.写入Excel格式 public WriteExcel(Context mContext){ this.mContext = mContext; } // 创建excel表 public void createExcel(File file) { deleteExcel(file); WritableSheet ws = null; try { if (!file.exist

  • C#使用Gembox.SpreadSheet向Excel写入数据及图表的实例

    开发工具:VS2017 语言:C# DotNet版本:.Net FrameWork 4.0及以上 使用的DLL工具名称:GemBox.Spreadsheet.dll (版本:37.3.30.1185) 一.GemBox.Spreadsheet工具: 该DLL是由GemBox公司开发的基于Excel功能的开发工具,该DLL很轻量,且使用起来很方便,在这里推荐下来来使用. 下载地址: http://xiazai.jb51.net/201712/yuanma/GemBox_Spreadsheet.zi

  • jxl操作excel写入数据不覆盖原有数据示例

    需要导入的包:jxl.jar 复制代码 代码如下: public void readTO() {        Workbook wb = null;        WritableWorkbook wwb = null;        try {            File is = new File(System.getProperty("user.dir") + "\\in.xls");            File os = new File(Syst

  • java web将数据导出为Excel格式文件代码片段

    本文实例为大家分享了java web将数据导出为Excel格式文件的具体代码,供大家参考,具体内容如下 1.jsp代码 <input type="button" class="btn btn-info" onclick="getVerExcel();" value="导出为Excel文件" /> 2.js代码 function getVerExcel() { window.location.href = '/pms

  • asp中把数据导出为excel的2种方法

    我们在做项目的时候经常要将数据库的数据导出到excel中,很多asp用户并不知道怎么写. 这里明凯总结了两种方法来导出excel,希望能帮到大家. 方法一:用excel组件 < % set rs=server.createobject("adodb.recordset") sql="select * from mkusers" rs.open sql,objconn,1,1 Set ExcelApp =CreateObject("Excel.Appl

  • Java数据导出功能之导出Excel文件实例

    在编程中经常需要使用到表格(报表)的处理主要以Excel表格为主.下面给出用java写入数据到excel表格方法: 1.添加jar文件 java导入导出Excel文件要引入jxl.jar包,最关键的是这套API是纯Java的,并不依赖Windows系统,即使运行在Linux下,它同样能够正确的处理Excel文件.下载地址:http://www.andykhan.com/jexcelapi/ 2.jxl对Excel表格的认识 可以参见:http://www.jb51.net/article/686

  • python脚本实现数据导出excel格式的简单方法(推荐)

    实习期间,服务器的一位师兄让我帮忙整理一下服务器的log数据,最终我用Python实现了数据的提取并将其用Excel格式导出.下面是我Python实现的源码,可以自动遍历某一文件目录下的所有文本文件,并将总的数据导出到Excel文件中,导出为Excel格式这样就比较方便统计了. //实现将目录下所有文件格式为.txt的文件进行遍历统计,如果是别的格式直接将下面的.txt改为你所需要的格式后缀就可以了,比较方便. //过程就是先将所有的文件中的内容提取出来写入到一个新文件中,然后再从新文件中提取数

  • java web开发中大量数据导出Excel超时(504)问题解决

    import java.io.IOException; import java.io.OutputStream; import java.lang.reflect.Field; import java.text.SimpleDateFormat; import java.util.Date; import java.util.HashMap; import java.util.List; import java.util.Map; import java.util.Map.Entry; impo

  • PHP将数据导出Excel表中的实例(投机型)

    1.简介 如何利用最简单粗糙暴力的方法将数据写入Excel文件中呢? 因为ms word和excel的文档都支持html文本格式,因此我们可以基于这个原理采用html文本格式进行数据的输出. 在html中,我们只需要将数据照着所想要的顺序放进相应的html表格中即可. 我们采用PHP进行数据获取整理以及构造相应的html文本,最后通过字节流输出下载到用户本地. 2.代码 直接上代码,这是一个很简单的程序,里面都带有注释了. ExportExcel.class.php文件 <?php class

  • python实现数据导出到excel的示例--普通格式

    此文是在django框架下编写,从数据库中获取数据使用的是django-orm 用python导出数据到excel,简单到爆!(普通的excel格式) 安装xlwt pip install xlwt 编写py文件 from xlwt import * import StringIO from apps.song.models import Song def excel_ktvsong(request):
 """
导出excel表格
"""
 _

随机推荐