安卓:将文件保存到下载中,以便以后查看



我有一个应用程序,需要在连接到流时收集一堆数据。 我需要将此数据保存到一个文件中,以便稍后从设备中提取并使用标准计算机进行分析。

我的代码目前如下所示:

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上运行它

文件不可见,除非您明确提供它们。请参阅我关于MediaScanner的博客文章以阅读有关此内容的更多信息。

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

我想做一件非常相似的事情。这是我如何使用您的代码精确地使用它

运行我的代码后制作文件(/storage/emulated/0/Download/_Ascent_Test.txt):

我下载了 ES 文件资源管理器。

在底部的"快速访问"菜单中,我打开了"显示隐藏文件"。

然后,同样在"快速访问"菜单中,转到本地 ->/设备。

现在,您将能够导航到/storage 文件夹,并一直导航到_Ascent_test.txt

从那里您可以打开它并自己通过电子邮件发送。希望这有帮助!

因此,

这似乎是Nexus 4和7的已知问题。 我仍然没有解决方法,但是就目前而言,使用Astro文件管理器向自己发送电子邮件将解决手头的紧迫问题。

将文件保存在Nexus 7上的外部存储上并从PC检索

Nexus 4 不通过 MTP 显示文件

在这样的事情上浪费几个小时总是很有趣。嘎!

相关内容

  • 没有找到相关文章

最新更新