A class that encodes URL parameter values for MIDP devices. : Utilities « Network Protocol « Java






A class that encodes URL parameter values for MIDP devices.

     
/*
Chapter 3 - Simple Protocols
Java 2 Network Protocols Black Book
by Al Williams    
Paraglyph Press 2001
*/


/**
 * A class that encodes URL parameter values
 * for MIDP devices.
 */
public class EncodeURL {

    // The characters that do not need to
    // be converted.
    private static final String noEncode =
        "abcdefghijklmnopqrstuvwxyz" +
        "ABCDEFGHIJKLMNOPQRSTUVWXYZ" +
        "0123456789.*-_";

    // Mapping value values 0 through 15 to the
    // corresponding hexadecimal character.
    private static final char[] hexDigits = {
        '0', '1', '2', '3', '4', '5', '6', '7',
        '8', '9', 'A', 'B', 'C', 'D', 'E', 'F'
    };

    // Encodes the given string as required for
    // use in a URL query string or POST data.
    public static String encode(String src) {
        StringBuffer result = new StringBuffer(src.length());
        int count = src.length();
        for (int i = 0; i < count; i++) {
            char c = src.charAt(i);
            if (noEncode.indexOf(c) != -1) {
                // This is a character that does not
                // need to be encoded
                result.append(c);
                continue;
            }

            // Space is converted to '+'
            if (c == ' ') {
                result.append('+');
                continue;
            }

            // The remaining characters must be converted to
            // '%XY' where 'XY' is the hexadecimal value of
            // the character itself.
            result.append('%');
            result.append(hexDigits[(c >> 4) & 0xF]);
            result.append(hexDigits[c & 0xF]);
        }
        return result.toString();
    }
}

           
         
    
    
    
    
  








Related examples in the same category

1.Get the listing of everyone logged on
2.Scan your computer for ports in useScan your computer for ports in use
3.Using the URL Class (GetURL.java)
4.TCP socket monitor
5.Create Socket helper
6.Implements a TCP/IP bounce utility (proxy)
7.URL utilities class that makes it easy to create new URLs based off of old URLs without having to assemble or parse them yourself
8.Download from URL
9.URL ParserURL Parser
10.A simple class to load an URL in a browser
11.Using the java API URL class, extract the http/https hostname.
12.Utility class for URL decoding.
13.Utility class for URL encoding.
14.Allows easy downloading of files from HTTP sites
15.enum Http Status