替换URL中的符号不​​会起作用

时间:2015-02-25 15:30:45

标签: java android http replaceall

我试图通过从网络服务器接收网址,然后将其转换为位图图像,然后在其中显示符号%5C时出现以下错误,在Android中显示图像。

E/Error﹕ http:%5C/%5C/thumbs3.ebaystatic.com%5C/pict%5C/3007385805144040_5.jpg

我已经尝试url2.replaceAll("%5C","");去除符号,但这根本没有效果。我怎么能摆脱它,所以我有一个有效的网址。

2 个答案:

答案 0 :(得分:6)

您正在寻找的是一种名为URL的解码。

在此处阅读更多内容:How to do URL decoding in Java?

请勿尝试手动更换自己,使用库或为所有cases 编写自己的文件:

import java.net.URLDecoder;

String result = URLDecoder.decode(url, "UTF-8");

Java 1.7 +:

import java.net.URLDecoder;
import java.nio.charset.StandardCharsets;

String result = URLDecoder.decode(url, StandardCharsets.UTF_8.name());

答案 1 :(得分:1)

String url = "http:%5C/%5C/thumbs3.ebaystatic.com%5C/pict%5C/3007385805144040_5.jpg";
        String newUrl = url.replaceAll("%5C", "");

现在尝试使用newUrl作为路径。 如果问题出在URL上,那么这将对您有所帮助,否则问题来自您将网址解码为位图时。