Package org.apache.commons.codec.net
Class URLCodec
java.lang.Object
org.apache.commons.codec.net.URLCodec
- All Implemented Interfaces:
BinaryDecoder,BinaryEncoder,Decoder,Encoder,StringDecoder,StringEncoder
public class URLCodec extends Object implements BinaryEncoder, BinaryDecoder, StringEncoder, StringDecoder
Implements the 'www-form-urlencoded' encoding scheme, also misleadingly known as URL encoding.
For more detailed information please refer to Chapter 17.13.4 'Form content types' of the HTML 4.01 Specification
This codec is meant to be a replacement for standard Java classes
URLEncoder and URLDecoder
on older Java platforms, as these classes in Java versions below
1.4 rely on the platform's default charset encoding.
- Since:
- 1.2
- Version:
- $Id: URLCodec.java,v 1.19 2004/03/29 07:59:00 ggregory Exp $
- Author:
- Apache Software Foundation
-
Field Summary
Fields Modifier and Type Field Description protected StringcharsetThe default charset used for string decoding and encoding.protected static byteESCAPE_CHARprotected static BitSetWWW_FORM_URLBitSet of www-form-url safe characters. -
Constructor Summary
-
Method Summary
Modifier and Type Method Description byte[]decode(byte[] bytes)Decodes an array of URL safe 7-bit characters into an array of original bytes.Objectdecode(Object pObject)Decodes a URL safe object into its original form.Stringdecode(String pString)Decodes a URL safe string into its original form using the default string charset.Stringdecode(String pString, String charset)Decodes a URL safe string into its original form using the specified encoding.static byte[]decodeUrl(byte[] bytes)Decodes an array of URL safe 7-bit characters into an array of original bytes.byte[]encode(byte[] bytes)Encodes an array of bytes into an array of URL safe 7-bit characters.Objectencode(Object pObject)Encodes an object into its URL safe form.Stringencode(String pString)Encodes a string into its URL safe form using the default string charset.Stringencode(String pString, String charset)Encodes a string into its URL safe form using the specified string charset.static byte[]encodeUrl(BitSet urlsafe, byte[] bytes)Encodes an array of bytes into an array of URL safe 7-bit characters.StringgetDefaultCharset()The default charset used for string decoding and encoding.StringgetEncoding()Deprecated.use #getDefaultCharset()
-
Field Details
-
charset
The default charset used for string decoding and encoding. -
ESCAPE_CHAR
protected static byte ESCAPE_CHAR -
WWW_FORM_URL
BitSet of www-form-url safe characters.
-
-
Constructor Details
-
URLCodec
public URLCodec()Default constructor. -
URLCodec
Constructor which allows for the selection of a default charset- Parameters:
charset- the default string charset to use.
-
-
Method Details
-
encodeUrl
Encodes an array of bytes into an array of URL safe 7-bit characters. Unsafe characters are escaped.- Parameters:
urlsafe- bitset of characters deemed URL safebytes- array of bytes to convert to URL safe characters- Returns:
- array of bytes containing URL safe characters
-
decodeUrl
Decodes an array of URL safe 7-bit characters into an array of original bytes. Escaped characters are converted back to their original representation.- Parameters:
bytes- array of URL safe characters- Returns:
- array of original bytes
- Throws:
DecoderException- Thrown if URL decoding is unsuccessful
-
encode
public byte[] encode(byte[] bytes)Encodes an array of bytes into an array of URL safe 7-bit characters. Unsafe characters are escaped.- Specified by:
encodein interfaceBinaryEncoder- Parameters:
bytes- array of bytes to convert to URL safe characters- Returns:
- array of bytes containing URL safe characters
-
decode
Decodes an array of URL safe 7-bit characters into an array of original bytes. Escaped characters are converted back to their original representation.- Specified by:
decodein interfaceBinaryDecoder- Parameters:
bytes- array of URL safe characters- Returns:
- array of original bytes
- Throws:
DecoderException- Thrown if URL decoding is unsuccessful
-
encode
Encodes a string into its URL safe form using the specified string charset. Unsafe characters are escaped.- Parameters:
pString- string to convert to a URL safe formcharset- the charset for pString- Returns:
- URL safe string
- Throws:
UnsupportedEncodingException- Thrown if charset is not supported
-
encode
Encodes a string into its URL safe form using the default string charset. Unsafe characters are escaped.- Specified by:
encodein interfaceStringEncoder- Parameters:
pString- string to convert to a URL safe form- Returns:
- URL safe string
- Throws:
EncoderException- Thrown if URL encoding is unsuccessful- See Also:
getDefaultCharset()
-
decode
public String decode(String pString, String charset) throws DecoderException, UnsupportedEncodingExceptionDecodes a URL safe string into its original form using the specified encoding. Escaped characters are converted back to their original representation.- Parameters:
pString- URL safe string to convert into its original formcharset- the original string charset- Returns:
- original string
- Throws:
DecoderException- Thrown if URL decoding is unsuccessfulUnsupportedEncodingException- Thrown if charset is not supported
-
decode
Decodes a URL safe string into its original form using the default string charset. Escaped characters are converted back to their original representation.- Specified by:
decodein interfaceStringDecoder- Parameters:
pString- URL safe string to convert into its original form- Returns:
- original string
- Throws:
DecoderException- Thrown if URL decoding is unsuccessful- See Also:
getDefaultCharset()
-
encode
Encodes an object into its URL safe form. Unsafe characters are escaped.- Specified by:
encodein interfaceEncoder- Parameters:
pObject- string to convert to a URL safe form- Returns:
- URL safe object
- Throws:
EncoderException- Thrown if URL encoding is not applicable to objects of this type or if encoding is unsuccessful
-
decode
Decodes a URL safe object into its original form. Escaped characters are converted back to their original representation.- Specified by:
decodein interfaceDecoder- Parameters:
pObject- URL safe object to convert into its original form- Returns:
- original object
- Throws:
DecoderException- Thrown if URL decoding is not applicable to objects of this type if decoding is unsuccessful
-
getEncoding
Deprecated.use #getDefaultCharset()TheStringencoding used for decoding and encoding.- Returns:
- Returns the encoding.
-
getDefaultCharset
The default charset used for string decoding and encoding.- Returns:
- the default string charset.
-