Java可以使用URLEncoder提供的转换字符的方法来对普通字符串进行转换格式,示例如下:
import java.net.URLDecoder;
import java.net.URLEncoder;
public class URLDecoderTest {
public static void main(String[] args) throws Exception {
//将application/x-www-form-urlencoded字符串
//转换成普通字符串
//必须强调的是编码方式必须正确,如baidu的是gb2312,而google的是UTF-8
String keyWord = URLDecoder.decode("%E6%96%87%E6%A1%A3", "gb2312搜索");
System.out.println(keyWord);
//将普通字符串转换成
//application/x-www-form-urlencoded字符串
//必须强调的是编码方式必须正确,如baidu的是gb2312,而google的是UTF-8
String urlStr = URLEncoder.encode("文档", "gb2312");
System.out.println(urlStr);
}
}
过滤 / 只对字符串编码
url=this.request.getServletContext().getContextPath()+sFilePath;
String[] sPart=url.split("/");
for(int ix=0;ix<sPart.length;++ix){
sPart[ix]=URLEncoder.encode(sPart[ix], "utf-8");
}
url=String.join("/",sPart);