text: public CharArrayReader(char[] buf, int offset, int length){if (offset < 0 || offset > buf.Length || length < 0 || offset + length < 0){throw new System.ArgumentException();}this.buf = buf;this.pos = offset;this.markedPos = offset;int bufferLength = buf.Length;this.count = offset + length < bufferLength ? length : bufferLength;}