public int read(byte[] buf) throws IOException { return this.read(buf, 0, buf.length);
public int read() throws IOException { int num = this.read(this.oneBuf, 0, 1);  if (num == -1) { return num; } else { return (int) this.oneBuf[0]; }
    public int read(byte[] buf) throws IOException {        return this.read(buf, 0, buf.length);    }