StringReader.ReadLineAsync 方法
定义
从当前字符串中异步读取一行字符并将数据作为字符串返回。Reads a line of characters asynchronously from the current string and returns the data as a string.
public:
override System::Threading::Tasks::Task<System::String ^> ^ ReadLineAsync();
public override System.Threading.Tasks.Task<string> ReadLineAsync ();
public override System.Threading.Tasks.Task<string?> ReadLineAsync ();
[System.Runtime.InteropServices.ComVisible(false)]
public override System.Threading.Tasks.Task<string> ReadLineAsync ();
override this.ReadLineAsync : unit -> System.Threading.Tasks.Task<string>
[<System.Runtime.InteropServices.ComVisible(false)>]
override this.ReadLineAsync : unit -> System.Threading.Tasks.Task<string>
Public Overrides Function ReadLineAsync () As Task(Of String)
返回
表示异步读取操作的任务。A task that represents the asynchronous read operation. TResult 参数的值包含来自字符串读取器的下一行或为 null 如果读取所有字符。The value of the TResult parameter contains the next line from the string reader, or is null if all the characters have been read.
- 属性
例外
字符串读取器已被释放。The string reader has been disposed.
以前的读取操作当前正在使用读取器。The reader is currently in use by a previous read operation.
示例
下面的示例演示如何以异步方式从字符串中一次读取一行。The following example shows how to read one line at a time from a string asynchronously.
using System;
using System.IO;
using System.Text;
namespace ConsoleApplication
{
class Program
{
static void Main(string[] args)
{
ReadCharacters();
}
static async void ReadCharacters()
{
StringBuilder stringToRead = new StringBuilder();
stringToRead.AppendLine("Characters in 1st line to read");
stringToRead.AppendLine("and 2nd line");
stringToRead.AppendLine("and the end");
string readText;
using (StringReader reader = new StringReader(stringToRead.ToString()))
{
while ((readText = await reader.ReadLineAsync()) != null)
{
Console.WriteLine(readText);
}
}
}
}
}
// The example displays the following output:
//
// Characters in 1st line to read
// and 2nd line
// and the end
//
Imports System.IO
Imports System.Text
Module Module1
Sub Main()
ReadCharacters()
End Sub
Async Sub ReadCharacters()
Dim stringToRead = New StringBuilder()
stringToRead.AppendLine("Characters in 1st line to read")
stringToRead.AppendLine("and 2nd line")
stringToRead.AppendLine("and the end")
Using reader As StringReader = New StringReader(stringToRead.ToString())
Dim readText As String = Await reader.ReadLineAsync()
While Not IsNothing(readText)
Console.WriteLine(readText)
readText = Await reader.ReadLineAsync()
End While
End Using
End Sub
End Module
' The example displays the following output:
'
' Characters in 1st line to read
' and 2nd line
' and the end
'