Android-从字符串中删除URL百分比符号

Spl*_*usa 3 java string url android symbols

我有一个如下所示的网址:

自由女神%21%20英尺%20Whiskey%20Pete%20-%20Thunderfist%20%28Original%20Mix%29.mp3

我试图从中提取出来的话.现在,我正在使用string.replace("%21", "!")每个%20,%29等,因为每个段代表不同的字符或空格.有没有办法将这些符号和数字转换为它们实际意味着什么?

谢谢.

Dav*_*vid 7

这些符号是URLEncoded表示的字符,不能合法地存在于URL中.(%20 =单个空格等)

你需要UrlDecode这些字符串:

http://icfun.blogspot.com/2009/08/java-urlencode-and-urldecode-options.html

官方文档:http:
//download.oracle.com/javase/6/docs/api/java/net/URLDecoder.html


Jad*_*mec 5

似乎输入字符串是使用 URL 编码编写的。您可以使用 Java 中的 URLDecoder 类,而不是手动编写所有可能的替换(您几乎无法涵盖所有​​可能性)。

String input = "Liberty%21%20ft.%20Whiskey%20Pete...";
String decoded = URLDecoder.decode(input, "UTF-8");
Run Code Online (Sandbox Code Playgroud)