Utility class for string encoding and decoding.
return Arrays.copyOf(ba, len);
return Arrays.copyOf(ca, len);
private static int scale(int len, float expansionFactor) { return (int)(len * (double)expansionFactor);
MessageUtils.err("WARNING: Default charset " + csn + " not supported, using ISO-8859-1 instead");
char[] decode(byte[] ba, int off, int len) { char[] ca = new char[en];
static char[] decode(String charsetName, byte[] ba, int off, int len)
String csn = (charsetName == null) ? "ISO-8859-1" : charsetName;
return sd.decode(ba, off, len);
byte[] b = Arrays.copyOf(ba, ba.length);
return sd.decode(b, off, len);
static char[] decode(byte[] ba, int off, int len) { return decode(csn, ba, off, len);
return decode("ISO-8859-1", ba, off, len); MessageUtils.err("ISO-8859-1 charset not available: " byte[] encode(char[] ca, int off, int len) { byte[] ba = new byte[en];
static byte[] encode(String charsetName, char[] ca, int off, int len)
String csn = (charsetName == null) ? "ISO-8859-1" : charsetName;
return se.encode(ca, off, len);
char[] c = Arrays.copyOf(ca, ca.length);
return se.encode(c, off, len);
static byte[] encode(char[] ca, int off, int len) { return encode(csn, ca, off, len);
return encode("ISO-8859-1", ca, off, len); MessageUtils.err("ISO-8859-1 charset not available: "