public class URLRefEncoder
extends java.lang.Object
application/x-www-form-urlencoded
MIME format. For more information about HTML form encoding, consult the HTML
specification.
When encoding a String, the following rules apply:
a
" through
"z
", "A
" through "Z
"
and "0
" through "9
" remain the same.
.
", "-
",
"*
", and "_
" remain the same.
+
".
%xy
", where xy is the
two-digit hexadecimal representation of the byte. The recommended encoding
scheme to use is UTF-8. However, for compatibility reasons, if an encoding is
not specified, then the default encoding of the platform is used.
For example using UTF-8 as the encoding scheme the string "The string ü@foo-bar" would get converted to "The+string+%C3%BC%40foo-bar" because in UTF-8 the character ü is encoded as two bytes C3 (hex) and BC (hex), and the character @ is encoded as one byte 40 (hex).
Modifier and Type | Field and Description |
---|---|
(package private) static int |
caseDiff |
static java.nio.charset.Charset |
DEFAULT_ENCODING
The default encoding
|
(package private) static java.util.BitSet |
dontNeedEncoding |
Modifier and Type | Method and Description |
---|---|
static java.lang.String |
encode(java.lang.String s)
Translates a string into
x-www-form-urlencoded format. |
static java.lang.String |
encode(java.lang.String s,
java.nio.charset.Charset charset)
Translates a string into
application/x-www-form-urlencoded format
using a specific Charset. |
static java.lang.String |
encode(java.lang.String s,
java.lang.String enc)
Translates a string into
application/x-www-form-urlencoded format
using a specific encoding scheme. |
static boolean |
encodeChars(java.lang.Appendable out,
java.lang.CharSequence cs)
Translates a characters into
application/x-www-form-urlencoded
format using the UTF-8 Charset. |
static boolean |
encodeChars(java.lang.Appendable out,
java.lang.CharSequence cs,
java.nio.charset.Charset charset)
Translates a characters into
application/x-www-form-urlencoded
format using a specific Charset. |
static boolean |
encodeChars(java.lang.Appendable out,
java.lang.CharSequence cs,
java.nio.charset.Charset charset,
java.util.BitSet dontNeedEncoding)
Translates a characters into
application/x-www-form-urlencoded
format using a specific Charset. |
static java.lang.CharSequence |
encodeChars(java.lang.CharSequence cs)
Translates a characters into
x-www-form-urlencoded format. |
static java.lang.CharSequence |
encodeChars(java.lang.CharSequence cs,
java.nio.charset.Charset charset)
Translates a characters into
application/x-www-form-urlencoded
format using a specific Charset. |
static final int caseDiff
public static java.nio.charset.Charset DEFAULT_ENCODING
static final java.util.BitSet dontNeedEncoding
public static java.lang.String encode(java.lang.String s)
x-www-form-urlencoded
format. This method
uses UTF-8 as the encoding scheme to obtain the bytes for unsafe
characters.s
- String
to be translated.CharSequence
.public static java.lang.String encode(java.lang.String s, java.nio.charset.Charset charset)
application/x-www-form-urlencoded
format
using a specific Charset. This method
uses the supplied charset to obtain the bytes for unsafe characters.
Note: The World Wide Web Consortium Recommendation states that UTF-8 should be used. Not doing so may introduce incompatibilities.
s
- String
to be translated.charset
- the given charsetCharSequence
.java.lang.NullPointerException
- if s
or charset
is
null
.URLDecoder#decode(java.lang.String, java.nio.charset.Charset)
public static java.lang.String encode(java.lang.String s, java.lang.String enc) throws java.io.UnsupportedEncodingException
application/x-www-form-urlencoded
format
using a specific encoding scheme.
This method behaves the same as encodeChars(String s, Charset charset) except that it will look up the charset using the given encoding name.
s
- String
to be translated.enc
- The name of a supported
character
encoding.String
.java.io.UnsupportedEncodingException
- If the named encoding is not supportedURLDecoder#decode(java.lang.String, java.lang.String)
public static boolean encodeChars(java.lang.Appendable out, java.lang.CharSequence cs) throws java.io.IOException
application/x-www-form-urlencoded
format using the UTF-8 Charset. This
method uses the charset to obtain the bytes for unsafe characters.
Note: The World Wide Web Consortium Recommendation states that UTF-8 should be used. Not doing so may introduce incompatibilities.
out
- the output.cs
- CharSequence
to be translated.java.io.IOException
- If an I/O error occurs.java.lang.NullPointerException
- if s
or charset
is
null
.URLDecoder#decode(java.lang.String, java.nio.charset.Charset)
public static boolean encodeChars(java.lang.Appendable out, java.lang.CharSequence cs, java.nio.charset.Charset charset) throws java.io.IOException
application/x-www-form-urlencoded
format using a specific Charset. This
method uses the supplied charset to obtain the bytes for unsafe characters.
Note: The World Wide Web Consortium Recommendation states that UTF-8 should be used. Not doing so may introduce incompatibilities.
out
- the output.cs
- CharSequence
to be translated.charset
- the given charsetjava.io.IOException
- If an I/O error occurs.java.lang.NullPointerException
- if s
or charset
is
null
.URLDecoder#decode(java.lang.String, java.nio.charset.Charset)
public static boolean encodeChars(java.lang.Appendable out, java.lang.CharSequence cs, java.nio.charset.Charset charset, java.util.BitSet dontNeedEncoding) throws java.io.IOException
application/x-www-form-urlencoded
format using a specific Charset. This
method uses the supplied charset to obtain the bytes for unsafe characters.
Note: The World Wide Web Consortium Recommendation states that UTF-8 should be used. Not doing so may introduce incompatibilities.
out
- the output.cs
- CharSequence
to be translated.charset
- the given charsetdontNeedEncoding
- the characters that don't need encoding.java.io.IOException
- If an I/O error occurs.java.lang.NullPointerException
- if s
or charset
is
null
.URLDecoder#decode(java.lang.String, java.nio.charset.Charset)
public static java.lang.CharSequence encodeChars(java.lang.CharSequence cs)
x-www-form-urlencoded
format. This
method uses UTF-8 as the encoding scheme to obtain the bytes for unsafe
characters.cs
- CharSequence
to be translated.CharSequence
.public static java.lang.CharSequence encodeChars(java.lang.CharSequence cs, java.nio.charset.Charset charset)
application/x-www-form-urlencoded
format using a specific Charset. This
method uses the supplied charset to obtain the bytes for unsafe characters.
Note: The World Wide Web Consortium Recommendation states that UTF-8 should be used. Not doing so may introduce incompatibilities.
cs
- CharSequence
to be translated.charset
- the given charsetCharSequence
.java.lang.NullPointerException
- if s
or charset
is
null
.URLDecoder#decode(java.lang.String, java.nio.charset.Charset)