android:如何在sdcard中获取存储在文件夹中的文件的完整路径?

Pus*_*tal 1 android sd-card android-sdcard

我在android工作.我想获得用户选择的文件的完整路径.我的文件
存储在SD卡中.但可能在SD卡的文件夹中.

我的SD卡中有一些文件夹.我想获得我点击的文件的完整路径.

假设我peacock.png在文件夹图像/鸟类中有一个图像.

所以路径是 mnt/sdcard/image/birds/peacock.png

请建议我如何获得文件的完整路径.

如果您需要我用于帮助的代码,请告诉我我会将其发送到此处.

先感谢您.

Ego*_*gor 6

这是教程的代码片段,显示了选择文件Intent的实现:

    protected void onActivityResult(int requestCode, int resultCode, Intent intent)
{
   if (requestCode == PICK_REQUEST_CODE)
   {
   if (resultCode == RESULT_OK)
   {
      Uri uri = intent.getData();
      String type = intent.getType();
      LogHelper.i(TAG,"Pick completed: "+ uri + " "+type);
      if (uri != null)
      {
         String path = uri.toString();
         if (path.toLowerCase().startsWith("file://"))
         {
            // Selected file/directory path is below
            path = (new File(URI.create(path))).getAbsolutePath();
         }

      }
   }
   else LogHelper.i(TAG,"Back from pick with cancel status");
   }
}
Run Code Online (Sandbox Code Playgroud)

如您所见,您的onActivityResult()方法返回Intent包含文件路径的文件路径,可以使用intent.getData()方法提取.然后,您只需使用此路径创建一个File对象,并使用file.getAbsolutePath()方法获取它的绝对路径.希望这可以帮助.