StreamReader.ReadToEndAsync 方法

定义

重载

ReadToEndAsync()

异步读取来自流的当前位置到结尾的所有字符并将它们作为一个字符串返回。

ReadToEndAsync(CancellationToken)

异步读取来自流的当前位置到结尾的所有字符并将它们作为一个字符串返回。

ReadToEndAsync()

异步读取来自流的当前位置到结尾的所有字符并将它们作为一个字符串返回。

public:
 override System::Threading::Tasks::Task<System::String ^> ^ ReadToEndAsync();
public override System.Threading.Tasks.Task<string> ReadToEndAsync ();
[System.Runtime.InteropServices.ComVisible(false)]
public override System.Threading.Tasks.Task<string> ReadToEndAsync ();
override this.ReadToEndAsync : unit -> System.Threading.Tasks.Task<string>
[<System.Runtime.InteropServices.ComVisible(false)>]
override this.ReadToEndAsync : unit -> System.Threading.Tasks.Task<string>
Public Overrides Function ReadToEndAsync () As Task(Of String)

返回

表示异步读取操作的任务。 TResult 参数值包括带有从流的当前位置到结尾的字符的字符串。

属性

例外

已释放流。

以前的读取操作当前正在使用读取器。

示例

以下示例演示如何使用 ReadToEndAsync() 方法读取文件的内容。

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.ReadToEndAsync();
                Console.WriteLine("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.ReadToEndAsync()
            Console.WriteLine("Contains: " + result)
        End Using
    End Sub
End Module

注解

此方法将存储在任务中,它返回该方法的同步对应项可能引发的所有非使用异常。 如果异常存储在返回的任务中,则在等待任务时将引发该异常。 使用异常(如 ArgumentException)仍会同步引发。 有关存储的异常,请参阅 引发的 ReadToEnd()异常。

适用于

ReadToEndAsync(CancellationToken)

异步读取来自流的当前位置到结尾的所有字符并将它们作为一个字符串返回。

public:
 override System::Threading::Tasks::Task<System::String ^> ^ ReadToEndAsync(System::Threading::CancellationToken cancellationToken);
public override System.Threading.Tasks.Task<string> ReadToEndAsync (System.Threading.CancellationToken cancellationToken);
override this.ReadToEndAsync : System.Threading.CancellationToken -> System.Threading.Tasks.Task<string>
Public Overrides Function ReadToEndAsync (cancellationToken As CancellationToken) As Task(Of String)

参数

cancellationToken
CancellationToken

要监视取消请求的标记。

返回

表示异步读取操作的任务。 TResult 参数值包括带有从流的当前位置到结尾的字符的字符串。

例外

流读取器已释放。

以前的读取操作当前正在使用读取器。

取消令牌已取消。 此异常存储在返回的任务中。

注解

如果通过 cancellationToken取消此方法,则某些已从当前 Stream 读取但未由 StreamReader) (存储的数据或 (返回给调用方) 的数据可能会丢失。

此方法将存储在任务中,它返回该方法的同步对应项可能引发的所有非使用异常。 如果异常存储在返回的任务中,则在等待任务时将引发该异常。 使用异常(如 ArgumentException)仍会同步引发。 有关存储的异常,请参阅 引发的 ReadToEnd()异常。

适用于