Android:将文件保存到可以稍后查看的下载

标签 android file saving-data

我有一个应用需要在连接到流时收集大量数据。我需要将这些数据保存到一个文件中,稍后我可以从我的设备中取出并使用标准计算机进行分析。

我的代码目前看起来像:

private void saveData(byte[] data){
    File path = Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_DOWNLOADS);
    File file = new File(path, "_Ascent_Test.txt");        
    try {                      
        FileOutputStream stream = new FileOutputStream(file, true);             
        stream.write(data);            
        stream.close();
        Log.i("saveData", "Data Saved");        
    } catch (IOException e) {
        Log.e("SAVE DATA", "Could not write file " + e.getMessage());
    }       
}

它正确地点击了“数据已保存”日志,没有任何错误,但是当我从我的计算机浏览它时,我无法在设备内部存储中的任何地方找到该文件。

我错过了什么?

谢谢。

编辑:我需要在 Nexus 7 上运行它

最佳答案

文件是不可见的,除非你让它们明确可用。看我的blog post about the MediaScanner阅读更多相关信息。

开发人员的工作是处理此问题并确保用户可能想要访问的所有文件都可供 MediaScanner 使用。

关于Android:将文件保存到可以稍后查看的下载,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14593066/

相关文章:

android - 在 Android 4 中更改首选项摘要文本颜色

javascript - 从检查元素中隐藏文件?

java - 关闭 JDialog 后保存 setText

mysql没有在开发机上保存数据

android - 无法在 Android Studio 中为新 Activity 设置父 Activity 。错误 : Hierarchical parent must already exist

android - 当 ViewPager Fragment 离开屏幕时继续更新 ProgressBar

android - 使 CustomView 可滚动

android - 如何在Android模拟器中添加文件到SD卡?

python - 从文本文件中提取字符

javascript - 如何保存自定义 Google map (API)?