요즘 개발하고 있는 프로그램에
javascript 에 있는 escape 함수가 필요해져서 삽질을 시작했다.
자바 스크립트로 테스트 html 페이지 만들어
ASCII 코드 ~127 까지 넣어보면서 -_- 삽질을 했다.
[CODE type="java"]public static String escape(String string){
[tab]StringBuffer sb = new StringBuffer();
[tab]String ncStr = "*+-./0123456789@ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz";
[tab]char c;
[tab]
[tab]for(int i=0;i<string.length();i++){
[tab][tab]c = string.charAt(i);
[tab][tab]if(c>0x7f){
[tab][tab][tab]sb.append("%u");
[tab][tab][tab]sb.append(Integer.toHexString((int)c).toUpperCase());
[tab][tab]}
[tab][tab]else if(ncStr.indexOf((int)c)==-1){
[tab][tab][tab]sb.append('%');
[tab][tab][tab]if(c<=0xf)
[tab][tab][tab][tab]sb.append('0');
[tab][tab][tab]sb.append(Integer.toHexString((int)c).toUpperCase());
[tab][tab]}
[tab][tab]else
[tab][tab][tab]sb.append(c);
[tab]}
[tab]
[tab]return sb.toString();
}
[/CODE]
javascript 에 있는 escape 함수가 필요해져서 삽질을 시작했다.
자바 스크립트로 테스트 html 페이지 만들어
ASCII 코드 ~127 까지 넣어보면서 -_- 삽질을 했다.
[CODE type="java"]public static String escape(String string){
[tab]StringBuffer sb = new StringBuffer();
[tab]String ncStr = "*+-./0123456789@ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz";
[tab]char c;
[tab]
[tab]for(int i=0;i<string.length();i++){
[tab][tab]c = string.charAt(i);
[tab][tab]if(c>0x7f){
[tab][tab][tab]sb.append("%u");
[tab][tab][tab]sb.append(Integer.toHexString((int)c).toUpperCase());
[tab][tab]}
[tab][tab]else if(ncStr.indexOf((int)c)==-1){
[tab][tab][tab]sb.append('%');
[tab][tab][tab]if(c<=0xf)
[tab][tab][tab][tab]sb.append('0');
[tab][tab][tab]sb.append(Integer.toHexString((int)c).toUpperCase());
[tab][tab]}
[tab][tab]else
[tab][tab][tab]sb.append(c);
[tab]}
[tab]
[tab]return sb.toString();
}
[/CODE]