从保存的Andr​​oid应用程序文件 [英] Saving files from app Android

查看:168
本文介绍了从保存的Andr​​oid应用程序文件的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我要救我的文件到下载文件夹。在我的应用程序我调用这个方法:

 公共无效出口(列表< VARA>一种){
    字符串文件名=的text.txt;
    FileOutputStream中的OutputStream;
    尝试{
        的OutputStream = openFileOutput(文件名,Context.MODE_APPEND);
        清单<串GT;数据=新的ArrayList<串GT;();
        data.add(这是我的档案\\ n \\ n);
        的for(int i = 0; I< esami.size();我++){
            data.add(\\ n \\ n名称:+ a.get(I).getName()+\\ n);
        }
        outputStream.write(data.toString()的getBytes());
        outputStream.close();
    }赶上(IOException异常五){
        e.printStackTrace();
    }
}

有了这个,我救我的文件为数据/数据​​/应用程序/文件/,我必须改变,以保存到MNT / SD卡/下载?谢谢!


解决方案

 字符串externalStoragePath = Environment.getExternalStorageDirectory()的toString();
档案文件=新的文件(externalStoragePath +/download/text.txt);
FileOutputStream中的OutputStream;
尝试{
    的OutputStream =新的FileOutputStream(文件);
    清单<串GT;数据=新的ArrayList<串GT;();
    data.add(这是我的档案\\ n \\ n);
    的for(int i = 0; I< esami.size();我++){
        data.add(\\ n \\ n名称:+ a.get(I).getName()+\\ n);
    }
    outputStream.write(data.toString()的getBytes());
}赶上(IOException异常五){
    e.printStackTrace();
} {最后
    如果(!=的OutputStream空)outputStream.close();
}

您还需要<使用许可权的android:NAME =android.permission.WRITE_EXTERNAL_STORAG​​E/>

I would save my file into download folder. In my app i call this method:

public void export(List<VarA> a) {
    String filename = "text.txt";
    FileOutputStream outputStream;      
    try {
        outputStream = openFileOutput(filename, Context.MODE_APPEND);
        List<String> data = new ArrayList<String>();
        data.add("This is my file.\n\n");
        for (int i=0; i<esami.size(); i++) {
            data.add("\n\nName: "+ a.get(i).getName()+"\n");
        }
        outputStream.write(data.toString().getBytes());
        outputStream.close();
    } catch (IOException e) {
        e.printStackTrace();
    }
}

With this i save my file into data/data/app/files/, what i must change to save into mnt/sdcard/download?? Thank you!

解决方案

String externalStoragePath = Environment.getExternalStorageDirectory().toString();
File file = new File(externalStoragePath + "/download/text.txt");
FileOutputStream outputStream;  
try {
    outputStream = new FileOutputStream(file);
    List<String> data = new ArrayList<String>();
    data.add("This is my file.\n\n");
    for (int i=0; i<esami.size(); i++) {
        data.add("\n\nName: "+ a.get(i).getName()+"\n");
    }
    outputStream.write(data.toString().getBytes());
} catch (IOException e) {
    e.printStackTrace();
} finally {
    if(outputStream!=null) outputStream.close();
}

You also need <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />

这篇关于从保存的Andr​​oid应用程序文件的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆