url을 파라미터 토큰별로 끊어서 인코딩


String encodeURL(String url) {
	StringBuffer sb = new StringBuffer();
	int firstQstIdx = url.indexOf("?");
	String uri = url.substring(0, firstQstIdx);
	String qry = url.substring(firstQstIdx);
	sb.append(uri);
	if(qry.length()>0){
		sb.append("?");
		qry = qry.substring(1);
	}
	StringTokenizer st = new StringTokenizer(qry, "&");
	while(st.hasMoreTokens()){
		String token = st.nextToken();
		int firstEqualIdx = token.indexOf("=");
		String name = token.substring(0, firstEqualIdx);
		try{
			sb.append(java.net.URLEncoder.encode(name, "UTF-8"));
			String val = token.substring(firstEqualIdx);
			if(val.length()>0){
				sb.append("=");
					sb.append(java.net.URLEncoder.encode(val.substring(1), "UTF-8"));
			}
		}
		catch(java.io.UnsupportedEncodingException uee){
			uee.printStackTrace();
		}
		if(st.hasMoreTokens())
			sb.append("&");
	}
	return sb.toString();
}
Valid XHTML 1.0! Valid CSS! powered by MoniWiki
last modified 2008-09-04 16:59:38
Processing time 0.0052 sec