【发布时间】:2012-02-05 12:35:58
【问题描述】:
我正在尝试从网站下载图像,并且我的代码在大多数情况下都可以正常工作,但我无法从该 URL http://www.liveandlocal.org.uk/images/ShowPics/Steiny's%20Blues%20-%20Such%20Sweet%20Thunder.jpg 下载
这个和其他 URL 的区别在于这个 URL 有一个破折号。我相当肯定这是问题所在。有没有办法解决这个问题?
我的错误是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 上运行。
【问题讨论】:
-
看起来
'破坏了它,而不是-。你urlencoded了吗? -
我想也许我们需要看看你的代码。你怎么看?
-
我已经编辑了我的帖子以包含代码 - 也尝试了迈克尔的回答 - 没有用