Класс URl-кодер/декодер

  1. /***
  2.   * @author JGDger
  3. ***/
  4.  
  5. public class urlcoder {
  6.  
  7.     private static String replace (String original, String search, String replaceWith)
  8.     {
  9.         while (original.indexOf(search)!=-1)
  10.         {
  11.             int start = original.indexOf(search);
  12.             int end = start + search.length();
  13.             original = original.substring(0, start)+replaceWith+original.substring(end);
  14.         }
  15.         return original;
  16.     }
  17.  
  18.     public static String encode(String original)
  19.     {
  20.         for (int i=0; i<chars.length; i++)
  21.         {
  22.             while(original.indexOf(chars[i])!=-1)
  23.             {
  24.                 original = replace(original,chars[i],urls[i]);
  25.             }
  26.         }
  27.         return original;
  28.     }
  29.  
  30.     public static String decode(String original)
  31.     {
  32.         for (int i=0; i<urls.length; i++)
  33.         {
  34.             while(original.indexOf(urls[i])!=-1)
  35.             {
  36.                 original = replace(original,urls[i],chars[i]);
  37.             }
  38.         }
  39.         return original;
  40.     }
  41.  
  42.     private static String[] urls =
  43.     {
  44.         "%D0%90", "%D0%91", "%D0%92", "%D0%93",
  45.         "%D0%94", "%D0%95", "%D0%81", "%D0%96",
  46.         "%D0%97", "%D0%98", "%D0%99", "%D0%9A",
  47.         "%D0%9B", "%D0%9C", "%D0%9D", "%D0%9E",
  48.         "%D0%9F", "%D0%A0", "%D0%A1", "%D0%A2",
  49.         "%D0%A3", "%D0%A4", "%D0%A5", "%D0%A6",
  50.         "%D0%A7", "%D0%A8", "%D0%A9", "%D0%AA",
  51.         "%D0%AB", "%D0%AC", "%D0%AD", "%D0%AE",
  52.         "%D0%AF", "%D0%B0", "%D0%B1", "%D0%B2",
  53.         "%D0%B3", "%D0%B4", "%D0%B5", "%D1%91",
  54.         "%D0%B6", "%D0%B7", "%D0%B8", "%D0%B9",
  55.         "%D0%BA", "%D0%BB", "%D0%BC", "%D0%BD",
  56.         "%D0%BE", "%D0%BF", "%D1%80", "%D1%81",
  57.         "%D1%82", "%D1%83", "%D1%84", "%D1%85",
  58.         "%D1%86", "%D1%87", "%D1%88", "%D1%89",
  59.         "%D1%8A", "%D1%8B", "%D1%8C", "%D1%8D",
  60.         "%D1%8E", "%D1%8F", "%20"
  61.     };
  62.     private static String[] chars =
  63.     {
  64.         "А", "Б", "В", "Г", "Д", "Е", "Ё", "Ж",
  65.         "З", "И", "Й", "К", "Л", "М", "Н", "О",
  66.         "П", "Р", "С", "Т", "У", "Ф", "Х", "Ц",
  67.         "Ч", "Ш", "Щ", "Ъ", "Ы", "Ь", "Э", "Ю",
  68.         "Я", "а", "б", "в", "г", "д", "е", "ё",
  69.         "ж", "з", "и", "й", "к", "л", "м", "н",
  70.         "о", "п", "р", "с", "т", "у", "ф", "х",
  71.         "ц", "ч", "ш", "щ", "ъ", "ы", "ь", "э",
  72.         "ю", "я", " "
  73.     };
  74. }
А то я тут увидел один.. :hack:

Реклама

Мы в соцсетях

tw tg yt gt