读取数据导入到CSV文件

在写自己的一个小密码保存项目中,要实现一个功能,将存在数据库里面的所有密码信息全部写到SD中的某个文件,然后将该文件直接做成附件发送邮箱。

读取数据(参考的http://blog.csdn.net/xinzheng_wang/article/details/7793692)

public static void ExportToCSV(Cursor c, String fileName) {

    int rowCount = 0;  
    int colCount = 0;  
    FileWriter fw;  
    BufferedWriter bfw;  
    File sdCardDir = Environment.getExternalStorageDirectory();  
    Log.d("haha", sdCardDir.getAbsolutePath());//storage/emulated/0
    File saveFile = new File(sdCardDir, fileName);  
    try {  
        rowCount = c.getCount();  
        colCount = c.getColumnCount();  
        fw = new FileWriter(saveFile);  
        bfw = new BufferedWriter(fw);  
        if (rowCount > 0) {  
            c.moveToFirst();  
            // 写入表头  
            for (int i = 0; i < colCount; i++) {  
                if (i != colCount - 1)  
                   bfw.write(c.getColumnName(i) + ',');  
                else  
                   bfw.write(c.getColumnName(i));  
            }  
            // 写好表头后换行  
            bfw.newLine();  
            // 写入数据  
            for (int i = 0; i < rowCount; i++) {  
                c.moveToPosition(i);  
                // Toast.makeText(mContext, "正在导出第"+(i+1)+"条",  
                // Toast.LENGTH_SHORT).show();  
                Log.v("导出数据", "正在导出第" + (i + 1) + "条");  
                for (int j = 0; j < colCount; j++) {  
                    if (j != colCount - 1)  
                        bfw.write(c.getString(j) + ',');  
                    else  
                       bfw.write(c.getString(j));  
                }  
                // 写好每条记录后换行  
                bfw.newLine();  
            }  
        }  
        // 将缓存数据写入文件  
        bfw.flush();  
        // 释放缓存  
        bfw.close();  
        // Toast.makeText(mContext, "导出完毕!", Toast.LENGTH_SHORT).show();  
        Log.v("导出数据", "导出完毕!");  
    } catch (IOException e) {  
        // TODO Auto-generated catch block  
        e.printStackTrace();  
    } finally {  
        c.close();  
    }  
}  

操作手机模拟器可以看到该文件,然而下一步如何在程序中实现将该文件作为附件传出去还没有想法额

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值