我想知道是否可以在编码之前知道输入的URL。
我的问题是,一旦输入URL,空格就会自动编码为%20。例如,我有一个包含此参数?a = on e
的URL。我需要获取此字符串“ a = on e”,因为我需要区分用户输入是空格还是%20。
答案 0 :(得分:0)
on%20e
是您从uri
编码获得的数据。因此,如果您想从url
获取正确的数据,则可以对查询参数进行解码。
例如:
String encodeResult = URLEncoder.encode(q, "UTF-8"); System.out.println(encodeResult); // result is on%20e
String decodeResult = URLDecoder.decode(encodeResult); System.out.println(decodeResult); // result is on e
您只需要记住仅对单个查询字符串参数名称和/或值进行编码,而不对整个URL