我正在尝试从Garmin设备获取文件名(以及文件路径),该设备充当USB大容量存储。将设备连接到计算机,文件路径为G:\ Garmin。使用OTG和Explorer将其连接到Android平板电脑(我已检查应用程序设置 - 包名称为:com.android.rk),文件路径为USB / Garmin。使用ES文件资源管理器,我看到文件路径是mnt / usb_storage / Garmin。所以在代码中,当我试图从文件路径usb_storage / Garmin解析system.xml时,我把文件路径放在这样:
String file = Environment.getExternalStorageDirectory() + "mnt/usb_storage/Garmin/system.xml";
当我运行应用程序时,它会崩溃,这意味着它找不到文件 system.xml 。当我在通过OTG连接的USB设备中查找文件时,我是否正确使用Environment.getExternalStorageDirectory()?你能指点我应该做些什么吗?非常感谢你。
答案 0 :(得分:2)
String file = Environment.getExternalStorageDirectory() + "mnt/usb_storage/Garmin/system.xml";
你的意思是:
String fileName = "/mnt/usb_storage/Garmin/system.xml";
这就是全部。注意tne / mnt / ...所以NOT mnt /...
答案 1 :(得分:1)
通过使用Environment.getExternalStorageDirectory()
,您实际上是指向您的SD卡或内部存储(取决于哪个设置为当前)和 ,您正在寻找设备挂载点。< / p>
但Unix中的挂载点在根级别可见
因此,请直接尝试/mnt/usb_storage/Garmin/system.xml
。