org.apache.commons.codec.binary
Class StringUtils

java.lang.Object
  extended by org.apache.commons.codec.binary.StringUtils

public class StringUtils
extends Object

Converts String to and from bytes using the encodings required by the Java specification. These encodings are specified in Standard charsets.

This class is immutable and thread-safe.

Since:
1.4
Version:
$Id: StringUtils.html 889935 2013-12-11 05:05:13Z ggregory $
See Also:
CharEncoding, Standard charsets

Constructor Summary
StringUtils()
           
 
Method Summary
static byte[] getBytesIso8859_1(String string)
          Encodes the given string into a sequence of bytes using the ISO-8859-1 charset, storing the result into a new byte array.
static byte[] getBytesUnchecked(String string, String charsetName)
          Encodes the given string into a sequence of bytes using the named charset, storing the result into a new byte array.
static byte[] getBytesUsAscii(String string)
          Encodes the given string into a sequence of bytes using the US-ASCII charset, storing the result into a new byte array.
static byte[] getBytesUtf16(String string)
          Encodes the given string into a sequence of bytes using the UTF-16 charset, storing the result into a new byte array.
static byte[] getBytesUtf16Be(String string)
          Encodes the given string into a sequence of bytes using the UTF-16BE charset, storing the result into a new byte array.
static byte[] getBytesUtf16Le(String string)
          Encodes the given string into a sequence of bytes using the UTF-16LE charset, storing the result into a new byte array.
static byte[] getBytesUtf8(String string)
          Encodes the given string into a sequence of bytes using the UTF-8 charset, storing the result into a new byte array.
static String newString(byte[] bytes, String charsetName)
          Constructs a new String by decoding the specified array of bytes using the given charset.
static String newStringIso8859_1(byte[] bytes)
          Constructs a new String by decoding the specified array of bytes using the ISO-8859-1 charset.
static String newStringUsAscii(byte[] bytes)
          Constructs a new String by decoding the specified array of bytes using the US-ASCII charset.
static String newStringUtf16(byte[] bytes)
          Constructs a new String by decoding the specified array of bytes using the UTF-16 charset.
static String newStringUtf16Be(byte[] bytes)
          Constructs a new String by decoding the specified array of bytes using the UTF-16BE charset.
static String newStringUtf16Le(byte[] bytes)
          Constructs a new String by decoding the specified array of bytes using the UTF-16LE charset.
static String newStringUtf8(byte[] bytes)
          Constructs a new String by decoding the specified array of bytes using the UTF-8 charset.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

StringUtils

public StringUtils()
Method Detail

getBytesIso8859_1

public static byte[] getBytesIso8859_1(String string)
Encodes the given string into a sequence of bytes using the ISO-8859-1 charset, storing the result into a new byte array.

Parameters:
string - the String to encode, may be null
Returns:
encoded bytes, or null if the input string was null
Throws:
NullPointerException - Thrown if Charsets.ISO_8859_1 is not initialized, which should never happen since it is required by the Java platform specification.
Since:
As of 1.7, throws NullPointerException instead of UnsupportedEncodingException
See Also:
Standard charsets, getBytesUnchecked(String, String)

getBytesUnchecked

public static byte[] getBytesUnchecked(String string,
                                       String charsetName)
Encodes the given string into a sequence of bytes using the named charset, storing the result into a new byte array.

This method catches UnsupportedEncodingException and rethrows it as IllegalStateException, which should never happen for a required charset name. Use this method when the encoding is required to be in the JRE.

Parameters:
string - the String to encode, may be null
charsetName - The name of a required Charset
Returns:
encoded bytes, or null if the input string was null
Throws:
IllegalStateException - Thrown when a UnsupportedEncodingException is caught, which should never happen for a required charset name.
See Also:
CharEncoding, String.getBytes(String)

getBytesUsAscii

public static byte[] getBytesUsAscii(String string)
Encodes the given string into a sequence of bytes using the US-ASCII charset, storing the result into a new byte array.

Parameters:
string - the String to encode, may be null
Returns:
encoded bytes, or null if the input string was null
Throws:
NullPointerException - Thrown if Charsets.US_ASCII is not initialized, which should never happen since it is required by the Java platform specification.
Since:
As of 1.7, throws NullPointerException instead of UnsupportedEncodingException
See Also:
Standard charsets, getBytesUnchecked(String, String)

getBytesUtf16

public static byte[] getBytesUtf16(String string)
Encodes the given string into a sequence of bytes using the UTF-16 charset, storing the result into a new byte array.

Parameters:
string - the String to encode, may be null
Returns:
encoded bytes, or null if the input string was null
Throws:
NullPointerException - Thrown if Charsets.UTF_16 is not initialized, which should never happen since it is required by the Java platform specification.
Since:
As of 1.7, throws NullPointerException instead of UnsupportedEncodingException
See Also:
Standard charsets, getBytesUnchecked(String, String)

getBytesUtf16Be

public static byte[] getBytesUtf16Be(String string)
Encodes the given string into a sequence of bytes using the UTF-16BE charset, storing the result into a new byte array.

Parameters:
string - the String to encode, may be null
Returns:
encoded bytes, or null if the input string was null
Throws:
NullPointerException - Thrown if Charsets.UTF_16BE is not initialized, which should never happen since it is required by the Java platform specification.
Since:
As of 1.7, throws NullPointerException instead of UnsupportedEncodingException
See Also:
Standard charsets, getBytesUnchecked(String, String)

getBytesUtf16Le

public static byte[] getBytesUtf16Le(String string)
Encodes the given string into a sequence of bytes using the UTF-16LE charset, storing the result into a new byte array.

Parameters:
string - the String to encode, may be null
Returns:
encoded bytes, or null if the input string was null
Throws:
NullPointerException - Thrown if Charsets.UTF_16LE is not initialized, which should never happen since it is required by the Java platform specification.
Since:
As of 1.7, throws NullPointerException instead of UnsupportedEncodingException
See Also:
Standard charsets, getBytesUnchecked(String, String)

getBytesUtf8

public static byte[] getBytesUtf8(String string)
Encodes the given string into a sequence of bytes using the UTF-8 charset, storing the result into a new byte array.

Parameters:
string - the String to encode, may be null
Returns:
encoded bytes, or null if the input string was null
Throws:
NullPointerException - Thrown if Charsets.UTF_8 is not initialized, which should never happen since it is required by the Java platform specification.
Since:
As of 1.7, throws NullPointerException instead of UnsupportedEncodingException
See Also:
Standard charsets, getBytesUnchecked(String, String)

newString

public static String newString(byte[] bytes,
                               String charsetName)
Constructs a new String by decoding the specified array of bytes using the given charset.

This method catches UnsupportedEncodingException and re-throws it as IllegalStateException, which should never happen for a required charset name. Use this method when the encoding is required to be in the JRE.

Parameters:
bytes - The bytes to be decoded into characters, may be null
charsetName - The name of a required Charset
Returns:
A new String decoded from the specified array of bytes using the given charset, or null if the input byte array was null.
Throws:
IllegalStateException - Thrown when a UnsupportedEncodingException is caught, which should never happen for a required charset name.
See Also:
CharEncoding, String.String(byte[], String)

newStringIso8859_1

public static String newStringIso8859_1(byte[] bytes)
Constructs a new String by decoding the specified array of bytes using the ISO-8859-1 charset.

Parameters:
bytes - The bytes to be decoded into characters, may be null
Returns:
A new String decoded from the specified array of bytes using the ISO-8859-1 charset, or null if the input byte array was null.
Throws:
NullPointerException - Thrown if Charsets.ISO_8859_1 is not initialized, which should never happen since it is required by the Java platform specification.
Since:
As of 1.7, throws NullPointerException instead of UnsupportedEncodingException

newStringUsAscii

public static String newStringUsAscii(byte[] bytes)
Constructs a new String by decoding the specified array of bytes using the US-ASCII charset.

Parameters:
bytes - The bytes to be decoded into characters
Returns:
A new String decoded from the specified array of bytes using the US-ASCII charset, or null if the input byte array was null.
Throws:
NullPointerException - Thrown if Charsets.US_ASCII is not initialized, which should never happen since it is required by the Java platform specification.
Since:
As of 1.7, throws NullPointerException instead of UnsupportedEncodingException

newStringUtf16

public static String newStringUtf16(byte[] bytes)
Constructs a new String by decoding the specified array of bytes using the UTF-16 charset.

Parameters:
bytes - The bytes to be decoded into characters
Returns:
A new String decoded from the specified array of bytes using the UTF-16 charset or null if the input byte array was null.
Throws:
NullPointerException - Thrown if Charsets.UTF_16 is not initialized, which should never happen since it is required by the Java platform specification.
Since:
As of 1.7, throws NullPointerException instead of UnsupportedEncodingException

newStringUtf16Be

public static String newStringUtf16Be(byte[] bytes)
Constructs a new String by decoding the specified array of bytes using the UTF-16BE charset.

Parameters:
bytes - The bytes to be decoded into characters
Returns:
A new String decoded from the specified array of bytes using the UTF-16BE charset, or null if the input byte array was null.
Throws:
NullPointerException - Thrown if Charsets.UTF_16BE is not initialized, which should never happen since it is required by the Java platform specification.
Since:
As of 1.7, throws NullPointerException instead of UnsupportedEncodingException

newStringUtf16Le

public static String newStringUtf16Le(byte[] bytes)
Constructs a new String by decoding the specified array of bytes using the UTF-16LE charset.

Parameters:
bytes - The bytes to be decoded into characters
Returns:
A new String decoded from the specified array of bytes using the UTF-16LE charset, or null if the input byte array was null.
Throws:
NullPointerException - Thrown if Charsets.UTF_16LE is not initialized, which should never happen since it is required by the Java platform specification.
Since:
As of 1.7, throws NullPointerException instead of UnsupportedEncodingException

newStringUtf8

public static String newStringUtf8(byte[] bytes)
Constructs a new String by decoding the specified array of bytes using the UTF-8 charset.

Parameters:
bytes - The bytes to be decoded into characters
Returns:
A new String decoded from the specified array of bytes using the UTF-8 charset, or null if the input byte array was null.
Throws:
NullPointerException - Thrown if Charsets.UTF_8 is not initialized, which should never happen since it is required by the Java platform specification.
Since:
As of 1.7, throws NullPointerException instead of UnsupportedEncodingException


Copyright © 2002-2013 The Apache Software Foundation. All Rights Reserved.