code: public long skip(long n) throws IOException {
          synchronized (lock) {
              ensureOpen();
  
              long avail = count - pos;
              if (n > avail) {
                  n = avail;
              }
              if (n < 0) {
                  return 0;
              }
              pos += n;
              return n;
          }
      }
docs: Skips characters.  Returns the number of characters that were skipped.
  
  <p>The <code>n</code> parameter may be negative, even though the
  <code>skip</code> method of the {@link Reader} superclass throws
  an exception in this case. If <code>n</code> is negative, then
  this method does nothing and returns <code>0</code>.
  
  @param n The number of characters to skip
  @return       The number of characters actually skipped
  @exception  IOException If the stream is closed, or an I/O error occurs