import java.io.ByteArrayOutputStream; /** * Turns Strings of x-www-form-urlEncoded format into regular text. * * @version 1.0, 4/3/1996 * @author Elliotte Rusty Harold */ public class URLDecoder { private URLDecoder() { } /** * Translates String from x-www-form-urlEncoded format into text. * @param s String to be translated * @return the translated String. */ public static String decode(String s) { ByteArrayOutputStream out = new ByteArrayOutputStream(s.length()); for (int i = 0; i < s.length(); i++) { int c = (int) s.charAt(i); if (c == '+') { out.write(' '); } else if (c == '%') { int c1 = Character.digit(s.charAt(++i), 16); int c2 = Character.digit(s.charAt(++i), 16); out.write((char) (c1 * 16 + c2)); } else { out.write(c); } } // end for return out.toString(); } }