2015-04-23 130 views
2

我正在開發android應用程序,我想在通用圖像加載程序的幫助下顯示本地圖像。但是,當我嘗試顯示圖像在其本地圖像路徑中有空間時,則無法顯示圖像。我試圖在下列方式: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

是否UIL獲取路徑字符串?也許你可以在通過它之前遁入%20? –

回答

0

您可以嘗試用「\ u0020」替換空格;

path = path.replace(" ","\u0020"); 
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); 
+0

非常感謝 –