我正在开发Android应用程序,我希望在通用图像加载器的帮助下显示本地图像。但是当我尝试显示在其本地图像路径中有空间的图像时,它无法显示图像。我尝试了以下方式:
Uri.fromFile(new File(newImagePath)).toString();
我收到以下错误:
java.io.FileNotFoundException: /storage/emulated/0/WhatsApp/Media/WhatsApp%20Images/IMG-20150421-WA0002.jpg: open failed: ENOENT (No such file or directory)
at libcore.io.IoBridge.open(IoBridge.java:456)
如果尝试加载在其本地路径中没有空间的图像,那么它工作正常但是路径中带有空格的图像会导致问题。需要一些帮助。谢谢。
答案 0 :(得分:5)
实际上它是通用图像加载器的问题。 https://github.com/nostra13/Android-Universal-Image-Loader/issues/371
所以你只需解码你的图像路径就可以删除空间。
根据上述链接中的讨论,我得到了解决方案:
final String uri = Uri.fromFile(file).toString();
final String decoded = Uri.decode(uri);
ImageLoader.getInstance().displayImage(decoded, imageView);
答案 1 :(得分:0)
您可以尝试用“\ u0020”替换空格;
if