我正在尝试从网站下载图片,我的代码在大多数情况下都运行良好,但我无法从此网址下载http://www.liveandlocal.org.uk/images/ShowPics/Steiny的%20Blues%20-%20Such%20Sweet%20Thunder .JPG
这个和其他网址之间的区别在于这个网址有一个破折号。我很确定这是问题所在。有办法解决这个问题吗?
我的错误是java.io.filenotfoundexception
我的初始代码是:
imgLink = "http://www.liveandlocal.org.uk/images/ShowPics/" + Show + ".jpg";
imgLink = imgLink.replace(" ", "%20");
这给了我一些链接:http://www.liveandlocal.org.uk/images/ShowPics/The%20Atlantics.jpg 哪个有效,但这对我在顶部发布的链接不起作用。
所以现在我试过了:
try {
Show = URLEncoder.encode(Show, "UTF-8");
} catch (UnsupportedEncodingException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
imgLink = "http://www.liveandlocal.org.uk/images/ShowPics/" + Show + ".jpg";
哪个链接不起作用,例如http://www.liveandlocal.org.uk/images/ShowPics/The+Atlantics.jpg
如果您将此帖子开头的链接复制并粘贴到浏览器中,它将会起作用,因此它无法在Android上运行。
答案 0 :(得分:1)
imgLink =“http://www.liveandlocal.org.uk/images/ShowPics/Steiny%E2%80%99s%20Blues%20-%20Such%20Sweet%20Thunder.jpg”
为我工作正常,经过测试,相应地替换字符和
'
。
-
没问题。
答案 1 :(得分:0)
您的网址包含不适合网址的字母(在这种情况下为'
)。
您可以将您的网址编码如下:
String encodedUrl = URLEncoder.encode(normalUrl, "UTF-8");