StringReader.ReadAsync Metode
Definisi
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
Overload
ReadAsync(Char[], Int32, Int32) |
Membaca jumlah karakter maksimum yang ditentukan dari string saat ini secara asinkron dan menulis data ke buffer, dimulai pada indeks yang ditentukan. |
ReadAsync(Memory<Char>, CancellationToken) |
Secara asinkron membaca semua karakter dari string input, dimulai pada posisi saat ini, dan memajukan posisi saat ini ke akhir string input. |
ReadAsync(Char[], Int32, Int32)
- Sumber:
- StringReader.cs
- Sumber:
- StringReader.cs
- Sumber:
- StringReader.cs
Membaca jumlah karakter maksimum yang ditentukan dari string saat ini secara asinkron dan menulis data ke buffer, dimulai pada indeks yang ditentukan.
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)
Parameter
- buffer
- Char[]
Ketika metode ini kembali, berisi array karakter yang ditentukan dengan nilai antara index
dan (index
+ count
- 1) digantikan oleh karakter yang dibaca dari sumber saat ini.
- index
- Int32
Posisi untuk buffer
mulai menulis.
- count
- Int32
Jumlah maksimum karakter yang akan dibaca. Jika akhir string tercapai sebelum jumlah karakter yang ditentukan ditulis ke dalam buffer, metode akan kembali.
Mengembalikan
Tugas yang mewakili operasi baca asinkron. Nilai TResult
parameter berisi jumlah total byte yang dibaca ke dalam buffer. Nilai hasil bisa kurang dari jumlah byte yang diminta jika jumlah byte yang saat ini tersedia kurang dari angka yang diminta, atau bisa 0 (nol) jika akhir string telah tercapai.
- Atribut
Pengecualian
buffer
adalah null
.
index
atau count
negatif.
Jumlah index
dan count
lebih besar dari panjang buffer.
Pembaca string telah dibuang.
Pembaca saat ini sedang digunakan oleh operasi baca sebelumnya.
Contoh
Contoh berikut menunjukkan cara membaca 23 karakter pertama string secara asinkron.
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
'
Keterangan
Tugas selesai setelah jumlah karakter yang ditentukan oleh count
parameter dibaca atau akhir string tercapai.
Metode ini disimpan dalam tugas yang menampilkan semua pengecualian non-penggunaan yang dapat dilemparkan oleh rekan sinkron metode. Jika pengecualian disimpan ke dalam tugas yang dikembalikan, pengecualian tersebut akan dilemparkan saat tugas ditunggu. Pengecualian penggunaan, seperti ArgumentException, masih dilemparkan secara sinkron. Untuk pengecualian yang disimpan, lihat pengecualian yang dilemparkan oleh Read(Char[], Int32, Int32).
Berlaku untuk
ReadAsync(Memory<Char>, CancellationToken)
- Sumber:
- StringReader.cs
- Sumber:
- StringReader.cs
- Sumber:
- StringReader.cs
Secara asinkron membaca semua karakter dari string input, dimulai pada posisi saat ini, dan memajukan posisi saat ini ke akhir string input.
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)
Parameter
- cancellationToken
- CancellationToken
Token yang akan dipantau untuk permintaan pembatalan. Nilai defaultnya adalah None.
Mengembalikan
Tugas yang mewakili operasi baca asinkron. Nilai TResult
parameter berisi jumlah total karakter yang dibaca ke dalam buffer.
Pengecualian
Token pembatalan dibatalkan. Pengecualian ini disimpan ke dalam tugas yang dikembalikan.