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 → MarshalByRefObject → TextReader → StringReader
Implemented Interfaces
- IDisposable Implemented by: TextReader
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.
public
Threading.​Tasks.​Task<​int>
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.
public
Threading.​Tasks.​ValueTask<​int>
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.
public
Threading.​Tasks.​Task<​int>
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.
public
Threading.​Tasks.​ValueTask<​int>
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.
public
Threading.​Tasks.​ValueTask<​string>
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.