如何获取android中前缀为file://的文件路径?
How to get the file path with the prefix file:// in android?
这将给我一个这样的文件路径:
/storage/emulated/0/myimage.jpg
File imageFile = File(Environment.getExternalStorageDirectory(), "myimage.jpg");
String path = destination.getAbsolutePath();
Log.d("path", path);
如果我使用此路径将图像加载到使用 Picasso 的 ImageView 中,它将不起作用。
Picasso.with(this.context).load("/storage/emulated/0/myimage.jpg").into(imageView);
仅当我在路径前加上 file://
时它才有效
Picasso.with(this.context).load("file:///storage/emulated/0/myimage.jpg").into(imageView);
有没有办法用这个 file:// 获取文件路径而不是获取绝对路径然后手动添加?
像这样走:
String path = "/storage/emulated/0/";
File file = new File(path , "myImage.jpg");
Picasso.with(mContext).load(file).into(ImageView);
Picasso 也可以接受文件。所以在你的代码中你在这一点上完成了:
File imageFile = File(Environment.getExternalStorageDirectory(), "myimage.jpg");
你只需要把它放在毕加索
Picasso.with(mContext).load(imageFile).into(ImageView);
您需要使用文件中的 Uri.fromFile
to get URI
:
Uri uriFileName = Uri.fromFile(yourFile);
String uriStr = uriFileName.toString();
Example: "file:///tmp/android.txt"
这将给我一个这样的文件路径: /storage/emulated/0/myimage.jpg
File imageFile = File(Environment.getExternalStorageDirectory(), "myimage.jpg");
String path = destination.getAbsolutePath();
Log.d("path", path);
如果我使用此路径将图像加载到使用 Picasso 的 ImageView 中,它将不起作用。
Picasso.with(this.context).load("/storage/emulated/0/myimage.jpg").into(imageView);
仅当我在路径前加上 file://
时它才有效Picasso.with(this.context).load("file:///storage/emulated/0/myimage.jpg").into(imageView);
有没有办法用这个 file:// 获取文件路径而不是获取绝对路径然后手动添加?
像这样走:
String path = "/storage/emulated/0/";
File file = new File(path , "myImage.jpg");
Picasso.with(mContext).load(file).into(ImageView);
Picasso 也可以接受文件。所以在你的代码中你在这一点上完成了:
File imageFile = File(Environment.getExternalStorageDirectory(), "myimage.jpg");
你只需要把它放在毕加索
Picasso.with(mContext).load(imageFile).into(ImageView);
您需要使用文件中的 Uri.fromFile
to get URI
:
Uri uriFileName = Uri.fromFile(yourFile);
String uriStr = uriFileName.toString();
Example: "file:///tmp/android.txt"