Advertisement
Guest User

ConvertHtmlTags

a guest
Mar 13th, 2008
545
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 2.81 KB | None | 0 0
  1. import java.util.ArrayList;
  2. import java.util.StringTokenizer;
  3.  
  4.  
  5. public class ConvertHtmlTags {
  6.  
  7.         public static final ArrayList<Character> fillter = new ArrayList<Character>();
  8.  
  9.         static{
  10.                 fillter.add('<');fillter.add('>');fillter.add('(');fillter.add(')');fillter.add('#');
  11.                 fillter.add('&');fillter.add('\"');fillter.add('\'');fillter.add('%');fillter.add(';');
  12.                 fillter.add('+');fillter.add('-');fillter.add('*');fillter.add('/');fillter.add('\\');
  13.                 fillter.add('?');fillter.add(':');fillter.add('@');fillter.add('=');fillter.add('{');
  14.                 fillter.add('}');fillter.add('|');fillter.add('^');fillter.add('~');
  15.         }
  16.  
  17.         public static String encodeFull(String data){
  18.         final StringBuffer buf = new StringBuffer();
  19.         final char[] chars = data.toCharArray();
  20.         for (int i = 0; i < chars.length; i++) {
  21.                 buf.append("&#" + (int) chars[i]);
  22.         }
  23.  
  24.         return buf.toString();
  25.         }
  26.  
  27.         public static String encode(String data){
  28.         final StringBuffer buf = new StringBuffer();
  29.         final char[] chars = data.toCharArray();
  30.         for (int i = 0; i < chars.length; i++) {
  31.                 if(fillter.contains(chars[i]))
  32.                         buf.append("&#" + (int) chars[i] + ";");
  33.                 else
  34.                         buf.append(chars[i]);
  35.         }
  36.  
  37.         return buf.toString();
  38.         }
  39.  
  40.         public static String decodeFull(String data){
  41.           final StringBuffer buf = new StringBuffer();
  42.           final StringTokenizer st = new StringTokenizer(data,"&#");
  43.           while(st.hasMoreTokens()){
  44.             String token = st.nextToken();
  45.             buf.append((char)Integer.parseInt(token));
  46.           }
  47.           return buf.toString();
  48.         }
  49.  
  50.         public static String decode(String data){
  51.           final StringBuffer buf = new StringBuffer();
  52.           final StringTokenizer st = new StringTokenizer(data, "&#");
  53.           StringTokenizer subst = null;
  54.           int count = st.countTokens();
  55.           if(count > 1){
  56.             while (st.hasMoreTokens()) {
  57.               String token = st.nextToken();
  58.               subst = new StringTokenizer(token, ";");
  59.               if (subst.countTokens()>1){
  60.                 buf.append((char)Integer.parseInt(subst.nextToken()));
  61.                 if (subst.hasMoreTokens())
  62.                   buf.append(subst.nextToken());
  63.               }
  64.               else{
  65.                 if(token.endsWith(";"))
  66.                   buf.append((char)Integer.parseInt(token.replaceAll(";", "")));
  67.                 else
  68.                   buf.append(token);
  69.               }
  70.             }
  71.           }else{
  72.             buf.append(st.nextToken());
  73.           }
  74.           return buf.toString();
  75.         }
  76.  
  77. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement