StringReader.ReadAsync Metódus
Definíció
Fontos
Egyes információk olyan, kiadás előtti termékekre vonatkoznak, amelyek a kiadásig még jelentősen módosulhatnak. A Microsoft nem vállal kifejezett vagy törvényi garanciát az itt megjelenő információért.
Túlterhelések
| Name | Description |
|---|---|
| ReadAsync(Char[], Int32, Int32) |
Beolvassa a megadott maximális számú karaktert az aktuális sztringből aszinkron módon, és a megadott indextől kezdve egy pufferbe írja az adatokat. |
| ReadAsync(Memory<Char>, CancellationToken) |
Aszinkron módon beolvassa a bemeneti sztring összes karakterét az aktuális pozíciótól kezdve, és az aktuális pozíciót a bemeneti sztring végére viszi. |
ReadAsync(Char[], Int32, Int32)
- Forrás:
- StringReader.cs
- Forrás:
- StringReader.cs
- Forrás:
- StringReader.cs
- Forrás:
- StringReader.cs
- Forrás:
- StringReader.cs
Beolvassa a megadott maximális számú karaktert az aktuális sztringből aszinkron módon, és a megadott indextől kezdve egy pufferbe írja az adatokat.
public:
override System::Threading::Tasks::Task<int> ^ ReadAsync(cli::array <char> ^ buffer, int index, int count);
public override System.Threading.Tasks.Task<int> ReadAsync(char[] buffer, int index, int count);
[System.Runtime.InteropServices.ComVisible(false)]
public override System.Threading.Tasks.Task<int> ReadAsync(char[] buffer, int index, int count);
override this.ReadAsync : char[] * int * int -> System.Threading.Tasks.Task<int>
[<System.Runtime.InteropServices.ComVisible(false)>]
override this.ReadAsync : char[] * int * int -> System.Threading.Tasks.Task<int>
Public Overrides Function ReadAsync (buffer As Char(), index As Integer, count As Integer) As Task(Of Integer)
Paraméterek
- buffer
- Char[]
Amikor ez a metódus visszatér, a megadott karaktertömböt tartalmazza az aktuális forrásból beolvasott karakterek és (indexindex + - 1) közötti count értékekkel.
- index
- Int32
Az írás buffer megkezdésének helye.
- count
- Int32
Az elolvasandó karakterek maximális száma. Ha a sztring vége a megadott számú karakter pufferbe való beírása előtt ér véget, a metódus visszatér.
Válaszok
Az aszinkron olvasási műveletet képviselő feladat. A paraméter értéke a TResult pufferbe beolvasott bájtok teljes számát tartalmazza. Az eredmény értéke kisebb lehet, mint a kért bájtok száma, ha a jelenleg elérhető bájtok száma kisebb a kért számnál, vagy 0 (nulla) lehet, ha a sztring vége el lett érve.
- Attribútumok
Kivételek
buffer az null.
index vagy count negatív.
A puffer hosszánál nagyobb és index nagyobb összegcount.
A sztringolvasó el lett adva.
Az olvasót jelenleg egy korábbi olvasási művelet használja.
Példák
Az alábbi példa bemutatja, hogyan olvasható be a sztring első 23 karaktere aszinkron módon.
using System;
using System.IO;
namespace ConsoleApplication
{
class Program
{
static void Main(string[] args)
{
ReadCharacters();
}
static async void ReadCharacters()
{
string stringToRead = "Some characters to read but not all";
char[] charsRead = new char[stringToRead.Length];
using (StringReader reader = new StringReader(stringToRead))
{
await reader.ReadAsync(charsRead, 0, 23);
Console.WriteLine(charsRead);
}
}
}
}
// The example displays the following output:
// Some characters to read
//
Imports System.IO
Module Module1
Sub Main()
ReadCharacters()
End Sub
Async Sub ReadCharacters()
Dim stringToRead = "Some characters to read but not all"
Dim charsRead(stringToRead.Length) As Char
Using reader As StringReader = New StringReader(stringToRead)
Await reader.ReadAsync(charsRead, 0, 23)
Console.WriteLine(charsRead)
End Using
End Sub
End Module
' The example displays the following output:
' Some characters to read
'
Megjegyzések
A feladat a paraméter által count megadott karakterek olvasása vagy a sztring vége elérése után fejeződik be.
Ez a metódus a feladatban tárolja az összes olyan nem használati kivételt, amelyet a metódus szinkron megfelelője tud dobni. Ha egy kivételt tárol a visszaadott tevékenységben, akkor a rendszer akkor küldi el a kivételt, amikor a feladatra vár. A használati kivételek(például ArgumentException) továbbra is szinkron módon jelennek meg. A tárolt kivételekről lásd a következő által Read(Char[], Int32, Int32)kiadott kivételeket: .
A következőre érvényes:
ReadAsync(Memory<Char>, CancellationToken)
- Forrás:
- StringReader.cs
- Forrás:
- StringReader.cs
- Forrás:
- StringReader.cs
- Forrás:
- StringReader.cs
- Forrás:
- StringReader.cs
Aszinkron módon beolvassa a bemeneti sztring összes karakterét az aktuális pozíciótól kezdve, és az aktuális pozíciót a bemeneti sztring végére viszi.
public override System.Threading.Tasks.ValueTask<int> ReadAsync(Memory<char> buffer, System.Threading.CancellationToken cancellationToken = default);
override this.ReadAsync : Memory<char> * System.Threading.CancellationToken -> System.Threading.Tasks.ValueTask<int>
Public Overrides Function ReadAsync (buffer As Memory(Of Char), Optional cancellationToken As CancellationToken = Nothing) As ValueTask(Of Integer)
Paraméterek
Amikor ez a metódus visszatér, az aktuális forrásból beolvasott karaktereket tartalmazza.
- cancellationToken
- CancellationToken
A lemondási kérelmek figyelésére szolgáló jogkivonat. Az alapértelmezett érték a None.
Válaszok
Az aszinkron olvasási műveletet képviselő feladat. A paraméter értéke a TResult pufferbe beolvasott karakterek teljes számát tartalmazza.
Kivételek
A lemondási jogkivonat megszakadt. Ezt a kivételt a rendszer a visszaadott tevékenységben tárolja.