⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 escapeunescape.java

📁 可以和javascript的escape方法协同工作的escape方法的java实现
💻 JAVA
字号:
 class  EscapeUnescape{
   public static String  escape (String src) {
     int i; 
     char j; 
     StringBuffer tmp = new StringBuffer(); 
     tmp.ensureCapacity(src.length()*6); 
     for (i=0;i<src.length() ;i++ )  { 
       j = src.charAt(i); 
       if (Character.isDigit(j) || Character.isLowerCase(j) || Character.isUpperCase(j)) 
           tmp.append(j); 
       else    if (j<256)    { 
         tmp.append( "%" );
         if (j<16) 
           tmp.append( "0" );
         tmp.append( Integer.toString(j,16) ); 
       }else{ 
         tmp.append( "%u" );
         tmp.append( Integer.toString(j,16) ); 
       }
     } 
    return tmp.toString();
 }

    public static String  unescape (String src) {
        StringBuffer tmp = new StringBuffer(); 
        tmp.ensureCapacity(src.length());
        int  lastPos=0,pos=0; 
        char ch; 
        while (lastPos<src.length())  { 
            pos = src.indexOf("%",lastPos); 
            if (pos == lastPos){ 
              if (src.charAt(pos+1)=='u'){ 
                ch = (char)Integer.parseInt(src.substring(pos+2,pos+6),16); 
                tmp.append(ch); 
                lastPos = pos+6;  
              }else{ 
                ch = (char)Integer.parseInt(src.substring(pos+1,pos+3),16); 
                tmp.append(ch);
                lastPos = pos+3; 
              }
            }else{ 
                  if (pos == -1){
                      tmp.append(src.substring(lastPos));
                      lastPos=src.length(); 
                   }else{     
                      tmp.append(src.substring(lastPos,pos)); 
                      lastPos=pos;
                   } 
            }
        } 
        return tmp.toString();
   } 

    public static void main(String[] args)  { 
       String tmp=" ~!@#$%^&*()_+|\\=-,./?><;'][{}\"";
       System.out.println("testing escape : "+tmp); 
       tmp =escape(tmp); 
       System.out.println(tmp);
       System.out.println("testing unescape :"+tmp);
       System.out.println(unescape(tmp));
     }

}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -