TextReader.Read Method

Definition

Reads data from the text reader.

Overloads

Read()

Reads the next character from the text reader and advances the character position by one character.

Read(Span<Char>)

Reads the characters from the current reader and writes the data to the specified buffer.

Read(Char[], Int32, Int32)

Reads a specified maximum number of characters from the current reader and writes the data to a buffer, beginning at the specified index.

Read()

Reads the next character from the text reader and advances the character position by one character.

public:
 virtual int Read();
public virtual int Read ();
abstract member Read : unit -> int
override this.Read : unit -> int
Public Overridable Function Read () As Integer

Returns

The next character from the text reader, or -1 if no more characters are available. The default implementation returns -1.

Exceptions

An I/O error occurs.

Remarks

The TextReader class is an abstract class. Therefore, you do not instantiate it in your code. For an example of using the Read method, see the StreamReader.Read method.

See also

Applies to

Read(Span<Char>)

Reads the characters from the current reader and writes the data to the specified buffer.

public:
 virtual int Read(Span<char> buffer);
public virtual int Read (Span<char> buffer);
abstract member Read : Span<char> -> int
override this.Read : Span<char> -> int
Public Overridable Function Read (buffer As Span(Of Char)) As Integer

Parameters

buffer
Span<Char>

When this method returns, contains the specified span of characters replaced by the characters read from the current source.

Returns

The number of characters that have been read. The number will be less than or equal to the buffer length, depending on whether the data is available within the reader. This method returns 0 (zero) if it is called when no more characters are left to read.

Exceptions

buffer is null.

The number of characters read from the stream is larger than the length of the buffer.

Applies to

Read(Char[], Int32, Int32)

Reads a specified maximum number of characters from the current reader and writes the data to a buffer, beginning at the specified index.

public:
 virtual int Read(cli::array <char> ^ buffer, int index, int count);
public virtual int Read (char[] buffer, int index, int count);
abstract member Read : char[] * int * int -> int
override this.Read : char[] * int * int -> int
Public Overridable Function Read (buffer As Char(), index As Integer, count As Integer) As Integer

Parameters

buffer
Char[]

When this method returns, contains the specified character array with the values between index and (index + count - 1) replaced by the characters read from the current source.

index
Int32

The position in buffer at which to begin writing.

count
Int32

The maximum number of characters to read. If the end of the reader is reached before the specified number of characters is read into the buffer, the method returns.

Returns

The number of characters that have been read. The number will be less than or equal to count, depending on whether the data is available within the reader. This method returns 0 (zero) if it is called when no more characters are left to read.

Exceptions

buffer is null.

The buffer length minus index is less than count.

index or count is negative.

An I/O error occurs.

Remarks

This method returns after either count characters are read or the end of the file is reached. ReadBlock is a blocking version of this method.

The TextReader class is an abstract class. Therefore, you do not instantiate it in your code. For an example of using the Read method, see the StreamReader.Read method.

See also

Applies to