【问题标题】:Read files from USB external storage从 USB 外部存储读取文件
【发布时间】:2017-05-25 00:40:53
【问题描述】:

我有一个 USB-C SSD 设备连接到我的 Google Pixel。我可以确认它已安装到设备上,因为我可以在Settings > Storage 中看到删除存储,但我不确定如何从我的应用程序的存储中读取文件。我知道我可以使用FileReader 之类的东西来做到这一点,但我不知道路径是什么。在 Linux 中,我可以在 /mnt... 中找到 USB 存储,但我不知道 Android / Google Pixel 是做什么的

【问题讨论】:

  • 不喜欢撞人,但实际上没有人这样做吗?

标签: android android-file usb-drive solid-state-drive android-fileprovider


【解决方案1】:

您可能可以使用 getExternalFilesDirs() 找到路径。最后一个条目将是您在随身碟上的私人目录。

您还可以使用 Intent.ACTION_OPEN_DOCUMENT_TREE 和 Intent.ACTION_OPEN_DOCUMENT 让用户选择驱动器或驱动器上的文件。

【讨论】:

  • 感谢回复,第一个给了我[/storage/emulated/0/Android/data/com.company.my.app/files] 第二个,我在Intent i = new Intent(Intent.ACTION_OPEN_DOCUMENT_TREE); 上做了startActivityForResult 并从返回的intent 中得到了URI,看起来像/tree/04F8-111C: ,我尝试做 File f = new File(uri.getPath)f.listFiles() 但返回 null
  • 不,uri 看起来不像那样。您使用了 uri.getPath(),但内容方案是 uri.toString()。而且不能将 File 类用于内容方案。
  • 奇怪:你为什么不告诉 getExternalFilesDirs() 传递的第二个或第三个路径的值?有了它们,您可以使用 File 类。
  • this 的回答居然帮我解决了问题
猜你喜欢
  • 2012-01-12
  • 2013-04-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-04-12
  • 2020-09-13
  • 1970-01-01
相关资源
最近更新 更多