Early Preview

This is currently very much a preview. Please feel free to try things out, but don't be upset if anything is not yet working. Feedback is welcome over on our GitHub Dicussions page.

class System.​IO.​StringReader

Assembly: System.Runtime

Inheritance: object → MarshalByRefObjectTextReader → StringReader

Implemented Interfaces

Implements a <see cref="T:System.IO.TextReader" /> that reads from a string.

Methods

public void
Close​()
Closes the <see cref="T:System.IO.StringReader" /> .
protected void
Dispose​(bool disposing)
Releases the unmanaged resources used by the <see cref="T:System.IO.StringReader" /> and optionally releases the managed resources.
disposing <see langword="true" /> to release both managed and unmanaged resources; <see langword="false" /> to release only unmanaged resources.
public int
Peek​()
Returns the next available character but does not consume it.
Returns An integer representing the next character to be read, or -1 if no more characters are available or the stream does not support seeking.
public int
Read​()
Reads the next character from the input string and advances the character position by one character.
Returns The next character from the underlying string, or -1 if no more characters are available.
public int
Read​(char[] buffer, int index, int count)
Reads a block of characters from the input string and advances the character position by <paramref name="count" /> .
Returns The total number of characters read into the buffer. This can be less than the number of characters requested if that many characters are not currently available, or zero if the end of the underlying string has been reached.
buffer When this method returns, contains the specified character array with the values between <paramref name="index" /> and ( <paramref name="index" /> + <paramref name="count" /> - 1) replaced by the characters read from the current source.
index The starting index in the buffer.
count The number of characters to read.
public int
Read​(Span<​char> buffer)
Reads all the characters from the input string, starting at the current position, and advances the current position to the end of the input string.
Returns The total number of characters read into the buffer.
buffer When this method returns, contains the characters read from the current source. If the total number of characters read is zero, the span remains unmodified.
ReadAsync​(char[] buffer, int index, int count)
Reads a specified maximum number of characters from the current string asynchronously and writes the data to a buffer, beginning at the specified index.
Returns A task that represents the asynchronous read operation. The value of the <paramref name="TResult" /> parameter contains the total number of bytes read into the buffer. The result value can be less than the number of bytes requested if the number of bytes currently available is less than the requested number, or it can be 0 (zero) if the end of the string has been reached.
buffer When this method returns, contains the specified character array with the values between <paramref name="index" /> and ( <paramref name="index" /> + <paramref name="count" /> - 1) replaced by the characters read from the current source.
index The position in <paramref name="buffer" /> at which to begin writing.
count The maximum number of characters to read. If the end of the string is reached before the specified number of characters is written into the buffer, the method returns.
ReadAsync​(Memory<​char> buffer, Threading.​CancellationToken cancellationToken = null)
Asynchronously reads all the characters from the input string, starting at the current position, and advances the current position to the end of the input string.
Returns A task that represents the asynchronous read operation. The value of the <paramref name="TResult" /> parameter contains the total number of characters read into the buffer.
buffer When this method returns, contains the characters read from the current source.
cancellationToken The token to monitor for cancellation requests. The default value is <see cref="P:System.Threading.CancellationToken.None" /> .
public int
ReadBlock​(Span<​char> buffer)
Reads all the characters from the input string starting at the current position and advances the current position to the end of the input string.
Returns The total number of characters read into the buffer.
buffer When this method returns, contains the characters read from the current source. If the total number of characters read is zero, the span remains unmodified.
ReadBlockAsync​(char[] buffer, int index, int count)
Reads a specified maximum number of characters from the current string asynchronously and writes the data to a buffer, beginning at the specified index.
Returns A task that represents the asynchronous read operation. The value of the <paramref name="TResult" /> parameter contains the total number of bytes read into the buffer. The result value can be less than the number of bytes requested if the number of bytes currently available is less than the requested number, or it can be 0 (zero) if the end of the string has been reached.
buffer When this method returns, contains the specified character array with the values between <paramref name="index" /> and ( <paramref name="index" /> + <paramref name="count" /> - 1) replaced by the characters read from the current source.
index The position in <paramref name="buffer" /> at which to begin writing.
count The maximum number of characters to read. If the end of the string is reached before the specified number of characters is written into the buffer, the method returns.
ReadBlockAsync​(Memory<​char> buffer, Threading.​CancellationToken cancellationToken = null)
Asynchronously reads all the characters from the input string starting at the current position and advances the current position to the end of the input string.
Returns A task representing the asynchronous read operation. The value of the <paramref name="TResult" /> parameter contains the total number of characters read into the buffer.
buffer When this method returns, contains the characters read from the current source. If the total number of characters read is zero, the span remains unmodified.
cancellationToken The token to monitor for cancellation requests. The default value is <see cref="P:System.Threading.CancellationToken.None" /> .
public string
ReadLine​()
Reads a line of characters from the current string and returns the data as a string.
Returns The next line from the current string, or <see langword="null" /> if the end of the string is reached.
public Threading.​Tasks.​Task<​string>
ReadLineAsync​()
Reads a line of characters asynchronously from the current string and returns the data as a string.
Returns A task that represents the asynchronous read operation. The value of the <paramref name="TResult" /> parameter contains the next line from the string reader, or is <see langword="null" /> if all the characters have been read.
ReadLineAsync​(Threading.​CancellationToken cancellationToken)
Reads a line of characters asynchronously from the current string and returns the data as a string.
Returns A value task that represents the asynchronous read operation. The value of the <c>TResult</c> parameter contains the next line from the string reader, or is <see langword="null" /> if all of the characters have been read.
cancellationToken The token to monitor for cancellation requests.
public string
ReadToEnd​()
Reads all characters from the current position to the end of the string and returns them as a single string.
Returns The content from the current position to the end of the underlying string.
public Threading.​Tasks.​Task<​string>
ReadToEndAsync​()
Reads all characters from the current position to the end of the string asynchronously and returns them as a single string.
Returns A task that represents the asynchronous read operation. The value of the <paramref name="TResult" /> parameter contains a string with the characters from the current position to the end of the string.
public Threading.​Tasks.​Task<​string>
ReadToEndAsync​(Threading.​CancellationToken cancellationToken)
Reads all characters from the current position to the end of the string asynchronously and returns them as a single string.
Returns A task that represents the asynchronous read operation. The value of the <c>TResult</c> parameter contains a string with the characters from the current position to the end of the string.
cancellationToken The token to monitor for cancellation requests.
public void
Dispose​()
Inherited from TextReader
Releases all resources used by the <see cref="T:System.IO.TextReader" /> object.
public int
ReadBlock​(char[] buffer, int index, int count)
Inherited from TextReader
Reads a specified maximum number of characters from the current text reader and writes the data to a buffer, beginning at the specified index.
Returns The number of characters that have been read. The number will be less than or equal to <paramref name="count" /> , depending on whether all input characters have been read.
buffer When this method returns, this parameter contains the specified character array with the values between <paramref name="index" /> and ( <paramref name="index" /> + <paramref name="count" /> -1) replaced by the characters read from the current source.
index The position in <paramref name="buffer" /> at which to begin writing.
count The maximum number of characters to read.
public object
GetLifetimeService​()
Inherited from MarshalByRefObject
Retrieves the current lifetime service object that controls the lifetime policy for this instance.
Returns An object of type <see cref="T:System.Runtime.Remoting.Lifetime.ILease" /> used to control the lifetime policy for this instance.
public object
InitializeLifetimeService​()
Inherited from MarshalByRefObject
Obtains a lifetime service object to control the lifetime policy for this instance.
Returns An object of type <see cref="T:System.Runtime.Remoting.Lifetime.ILease" /> used to control the lifetime policy for this instance. This is the current lifetime service object for this instance if one exists; otherwise, a new lifetime service object initialized to the value of the <see cref="P:System.Runtime.Remoting.Lifetime.LifetimeServices.LeaseManagerPollTime" /> property.
protected MarshalByRefObject
MemberwiseClone​(bool cloneIdentity)
Inherited from MarshalByRefObject
Creates a shallow copy of the current <see cref="T:System.MarshalByRefObject" /> object.
Returns A shallow copy of the current <see cref="T:System.MarshalByRefObject" /> object.
cloneIdentity <see langword="false" /> to delete the current <see cref="T:System.MarshalByRefObject" /> object's identity, which will cause the object to be assigned a new identity when it is marshaled across a remoting boundary. A value of <see langword="false" /> is usually appropriate. <see langword="true" /> to copy the current <see cref="T:System.MarshalByRefObject" /> object's identity to its clone, which will cause remoting client calls to be routed to the remote server object.
public bool
Equals​(object obj)
Inherited from object
Determines whether the specified object is equal to the current object.
Returns <see langword="true" /> if the specified object is equal to the current object; otherwise, <see langword="false" /> .
obj The object to compare with the current object.
protected void
Finalize​()
Inherited from object
Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection.
public int
GetHashCode​()
Inherited from object
Serves as the default hash function.
Returns A hash code for the current object.
public Type
GetType​()
Inherited from object
Gets the <see cref="T:System.Type" /> of the current instance.
Returns The exact runtime type of the current instance.
protected object
MemberwiseClone​()
Inherited from object
Creates a shallow copy of the current <see cref="T:System.Object" /> .
Returns A shallow copy of the current <see cref="T:System.Object" /> .
public string
ToString​()
Inherited from object
Returns a string that represents the current object.
Returns A string that represents the current object.