搜索：

public class GenericLittleEndianWriter implements LittleEndianWriter {

    // See http://java.sun.com/j2se/1.4.2/docs/api/java/nio/charset/Charset.html
    private static final Charset ASCII = Charset.forName("US-ASCII"); // ISO-8859-1, UTF-8
    private ByteOutputStream bos;



替換：

public class GenericLittleEndianWriter implements LittleEndianWriter {

    // See http://java.sun.com/j2se/1.4.2/docs/api/java/nio/charset/Charset.html
    private static Charset ASCII = Charset.forName("GBK");
    private ByteOutputStream bos;

    public int getlength(String  str){  
        int i,t=0;
        byte[]  bt  =  str.getBytes();  
        for (i=1;i<=bt.length;i++){  
            if(bt[i-1]<0){t=t+2;i++;}  
                else t=t+1;
            }
        return t;  
    }




搜索:

    public final void writeMapleAsciiString(final String s) {
        writeShort((short) s.length());
        writeAsciiString(s);

替换：

    public final void writeMapleAsciiString(final String s) {
        writeShort((short)getlength(s));
        writeAsciiString(s);
    }