StreamReader.ReadLineAsync 方法
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
重载
ReadLineAsync() |
从当前流中异步读取一行字符并将数据作为字符串返回。 |
ReadLineAsync(CancellationToken) |
从当前流中异步读取一行字符并将数据作为字符串返回。 |
ReadLineAsync()
- Source:
- StreamReader.cs
- Source:
- StreamReader.cs
- Source:
- StreamReader.cs
从当前流中异步读取一行字符并将数据作为字符串返回。
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)
返回
表示异步读取操作的任务。 TResult
参数的值包含来自流的下一行;如果读取了所有字符,则为 null
。
- 属性
例外
下一行中的字符数大于 Int32.MaxValue。
已释放流。
以前的读取操作当前正在使用读取器。
示例
以下示例演示如何使用 ReadLineAsync() 方法读取文件的第一行。
using System;
using System.IO;
namespace ConsoleApplication
{
class Program
{
static async Task Main()
{
await ReadCharacters();
}
static async Task ReadCharacters()
{
String result;
using (StreamReader reader = File.OpenText("existingfile.txt"))
{
Console.WriteLine("Opened file.");
result = await reader.ReadLineAsync();
Console.WriteLine("First line contains: " + result);
}
}
}
}
Imports System.IO
Module Module1
Sub Main()
ReadCharacters()
End Sub
Async Sub ReadCharacters()
Dim result As String
Using reader As StreamReader = File.OpenText("existingfile.txt")
Console.WriteLine("Opened file.")
result = Await reader.ReadLineAsync()
Console.WriteLine("First line contains: " + result)
End Using
End Sub
End Module
注解
此方法将存储在任务中,它返回该方法的同步对应项可能引发的所有非使用异常。 如果异常存储在返回的任务中,则在等待任务时将引发该异常。 使用异常(如 ArgumentException)仍会同步引发。 有关存储的异常,请参阅 引发的 ReadLine()异常。
适用于
ReadLineAsync(CancellationToken)
- Source:
- StreamReader.cs
- Source:
- StreamReader.cs
- Source:
- StreamReader.cs
从当前流中异步读取一行字符并将数据作为字符串返回。
public:
override System::Threading::Tasks::ValueTask<System::String ^> ReadLineAsync(System::Threading::CancellationToken cancellationToken);
public override System.Threading.Tasks.ValueTask<string?> ReadLineAsync (System.Threading.CancellationToken cancellationToken);
override this.ReadLineAsync : System.Threading.CancellationToken -> System.Threading.Tasks.ValueTask<string>
Public Overrides Function ReadLineAsync (cancellationToken As CancellationToken) As ValueTask(Of String)
参数
- cancellationToken
- CancellationToken
要监视取消请求的标记。
返回
表示异步读取操作的值任务。 参数的值 TResult
包含流中的下一行;如果已读取所有字符,则 为 null
。
例外
下一行中的字符数大于 Int32.MaxValue。
流读取器已释放。
以前的读取操作当前正在使用读取器。
取消令牌已取消。 此异常存储在返回的任务中。
注解
如果通过 cancellationToken
取消此方法,则某些已从当前 Stream 读取但未由 StreamReader) (存储的数据或 (返回给调用方) 的数据可能会丢失。
此方法将存储在任务中,它返回该方法的同步对应项可能引发的所有非使用异常。 如果异常存储在返回的任务中,则在等待任务时将引发该异常。 使用异常(如 ArgumentException)仍会同步引发。 有关存储的异常,请参阅 引发的 ReadLine()异常。