@Override
    public int read() throws IOException {
        int c = delegate.read();
        if (c == -1) {
            return -1;
        } if (c == '%') {
            return readHexByte();
        } else if (c < 0x80) {
            return c;
        } else {
            throw new MalformedURLException("Unescaped non-ASCII character.");            
        }
    }
@ Override public int read ( ) throws IOException { int c = delegate . read ( ) ; if ( c == - 1 ) { return - 1 ; } if ( c == '%' ) { return readHexByte ( ) ; } else if ( c < 0x80 ) { return c ; } else { throw new MalformedURLException ( "Unescaped non-ASCII character." ) ; } }
@see java.io.InputStream#read()