我有一个字符串表示一个包含空格的URL,并希望将其转换为一个URI对象。如果是尝试简单的事情Android:howto解析URL字符串与URI对象的空格?
String myString = "http://myhost.com/media/mp3s/9/Agenda of swine - 13. Persecution Ascension_ leave nothing standing.mp3";
URI myUri = new URI(myString);
它给了我
java.net.URISyntaxException: Illegal character in path at index X
其中指数X
是在URL字符串的第一个空间的位置。
如何可以解析myString
成URI
对象?
用'%20'代替空格就是诀窍。 THX – Mannaz 2010-04-07 15:14:38
@Mannaz - 当歌曲名称中出现另一个“无效”符号时要小心。 – Bozho 2010-04-07 19:31:02
@BalusC我试过URLEncoder.encode(“查询字符串”,“UTF-8”);它返回+符号像这样“查询+字符串”,我期待“%20”。所以我用string.replace和硬编码的值。解决了这个问题。谢谢(你的)信息。有没有其他的途径来编码,而不是手动替换..? – praveenb 2012-04-05 11:20:56