Package org.apache.commons.io
Class ByteOrderMark
- java.lang.Object
 - 
- org.apache.commons.io.ByteOrderMark
 
 
- 
- All Implemented Interfaces:
 java.io.Serializable
public class ByteOrderMark extends java.lang.Object implements java.io.SerializableByte Order Mark (BOM) representation. SeeBOMInputStream.We define the follow BOM constants:
Deprecating Serialization
Serialization is deprecated and will be removed in 3.0.
 
- 
- 
Field Summary
Fields Modifier and Type Field Description static ByteOrderMarkUTF_16BEUTF-16BE BOM (Big-Endian).static ByteOrderMarkUTF_16LEUTF-16LE BOM (Little-Endian).static ByteOrderMarkUTF_32BEUTF-32BE BOM (Big-Endian).static ByteOrderMarkUTF_32LEUTF-32LE BOM (Little-Endian).static ByteOrderMarkUTF_8UTF-8 BOM.static charUTF_BOMUnicode BOM character; external form depends on the encoding. 
- 
Constructor Summary
Constructors Constructor Description ByteOrderMark(java.lang.String charsetName, int... bytes)Constructs a new instance. 
- 
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description booleanequals(java.lang.Object obj)Indicates if this instance's bytes equals another.intget(int pos)Gets the byte at the specified position.byte[]getBytes()Gets a copy of the BOM's bytes.java.lang.StringgetCharsetName()Gets the name of theCharsetthe BOM represents.inthashCode()Computes the hash code for this BOM.intlength()Gets the length of the BOM's bytes.java.lang.StringtoString()Converts this instance to a String representation of the BOM. 
 - 
 
- 
- 
Field Detail
- 
UTF_8
public static final ByteOrderMark UTF_8
UTF-8 BOM.This BOM is:
0xEF 0xBB 0xBF
 
- 
UTF_16BE
public static final ByteOrderMark UTF_16BE
UTF-16BE BOM (Big-Endian).This BOM is:
0xFE 0xFF
 
- 
UTF_16LE
public static final ByteOrderMark UTF_16LE
UTF-16LE BOM (Little-Endian).This BOM is:
0xFF 0xFE
 
- 
UTF_32BE
public static final ByteOrderMark UTF_32BE
UTF-32BE BOM (Big-Endian).This BOM is:
0x00 0x00 0xFE 0xFF
- Since:
 - 2.2
 
 
- 
UTF_32LE
public static final ByteOrderMark UTF_32LE
UTF-32LE BOM (Little-Endian).This BOM is:
0xFF 0xFE 0x00 0x00
- Since:
 - 2.2
 
 
- 
UTF_BOM
public static final char UTF_BOM
Unicode BOM character; external form depends on the encoding.- Since:
 - 2.5
 - See Also:
 - Byte Order Mark (BOM) FAQ, Constant Field Values
 
 
 - 
 
- 
Constructor Detail
- 
ByteOrderMark
public ByteOrderMark(java.lang.String charsetName, int... bytes)Constructs a new instance.- Parameters:
 charsetName- The name of the charset the BOM representsbytes- The BOM's bytes- Throws:
 java.lang.IllegalArgumentException- if the charsetName is zero lengthjava.lang.IllegalArgumentException- if the bytes are zero length
 
 - 
 
- 
Method Detail
- 
equals
public boolean equals(java.lang.Object obj)
Indicates if this instance's bytes equals another.- Overrides:
 equalsin classjava.lang.Object- Parameters:
 obj- The object to compare to- Returns:
 - true if the bom's bytes are equal, otherwise false
 
 
- 
get
public int get(int pos)
Gets the byte at the specified position.- Parameters:
 pos- The position- Returns:
 - The specified byte
 
 
- 
getBytes
public byte[] getBytes()
Gets a copy of the BOM's bytes.- Returns:
 - a copy of the BOM's bytes
 
 
- 
getCharsetName
public java.lang.String getCharsetName()
Gets the name of theCharsetthe BOM represents.- Returns:
 - the character set name
 
 
- 
hashCode
public int hashCode()
Computes the hash code for this BOM.- Overrides:
 hashCodein classjava.lang.Object- Returns:
 - the hash code for this BOM.
 - See Also:
 Object.hashCode()
 
- 
length
public int length()
Gets the length of the BOM's bytes.- Returns:
 - the length of the BOM's bytes
 
 
- 
toString
public java.lang.String toString()
Converts this instance to a String representation of the BOM.- Overrides:
 toStringin classjava.lang.Object- Returns:
 - the length of the BOM's bytes
 
 
 - 
 
 -