String comp = comps.nextToken(); if (comp.length() == 1 && delimiters.indexOf(comp.charAt(0)) >= 0) { // if delimiter activateInitialCharacterSet(bb, cur); bb.put((byte) comp.charAt(0)); continue; encodeComponent(encs, cb, bb, cur); activateInitialCharacterSet(bb, cur);
switch (b[cur++]) { case 0x41: switchCodec(codec, 1, Codec.GB2312); break; case 0x43: switchCodec(codec, 1, Codec.KS_X_1001); break; default: // decode invalid ESC sequence as chars break; case 0x2842: switchCodec(codec, 0, Codec.ISO_646); break; case 0x284a: break; case 0x2d41: switchCodec(codec, 1, Codec.ISO_8859_1); break; case 0x2d42: switchCodec(codec, 1, Codec.ISO_8859_2); break; case 0x2d43: switchCodec(codec, 1, Codec.ISO_8859_3); break; case 0x2d44: switchCodec(codec, 1, Codec.ISO_8859_4); break; case 0x2d46:
if (cb.length() > 1) { for (int i = 0; i < cb.length(); i++) { encodeComponent(encs, cb.subSequence(i, i + 1), bb, cur);
public static SpecificCharacterSet valueOf(String... codes) { if (codes == null || codes.length == 0) return DEFAULT; if (codes.length > 1) codes = checkISO2022(codes); Codec[] infos = new Codec[codes.length]; for (int i = 0; i < codes.length; i++) infos[i] = Codec.forCode(codes[i]); return codes.length > 1 ? new ISO2022(infos,codes) : new SpecificCharacterSet(infos, codes); }