NetworkStream.Read Yöntem
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
Aşırı Yüklemeler
| Name | Description |
|---|---|
| Read(Span<Byte>) |
içindeki NetworkStream verileri okur ve bellekteki bir bayt aralığına depolar. |
| Read(Byte[], Int32, Int32) |
'den NetworkStream verileri okur ve bir bayt dizisine depolar. |
Read(Span<Byte>)
- Kaynak:
- NetworkStream.cs
- Kaynak:
- NetworkStream.cs
- Kaynak:
- NetworkStream.cs
- Kaynak:
- NetworkStream.cs
- Kaynak:
- NetworkStream.cs
içindeki NetworkStream verileri okur ve bellekteki bir bayt aralığına depolar.
public:
override int Read(Span<System::Byte> buffer);
public override int Read(Span<byte> buffer);
override this.Read : Span<byte> -> int
Public Overrides Function Read (buffer As Span(Of Byte)) As Integer
Parametreler
'den NetworkStreamokunan verileri depolamak için bellek bölgesi.
Döndürülenler
Arabelleğe okunan, sıfır (0) ile arabelleğin uzunluğu arasındaki toplam bayt sayısı. yöntemi yalnızca sıfır bayt istendiyse veya eş yuva düzgün bir kapatma gerçekleştirdiğinden kullanılabilir bayt sayısı fazla olmadığında sıfır (0) döndürür.
Özel durumlar
NetworkStream, okumayı desteklemez.
Kapalı NetworkStream .
Açıklamalar
Bu yöntem, parametresinde buffer kullanılabilen kadar veri okur ve başarıyla okunan bayt sayısını döndürür.
Note
özelliğini çağırarak NetworkStream öğesinin CanRead okunabilir olup olmadığını denetleyin. Okunamayan bir NetworkStream öğeden okumaya çalışırsanız, bir InvalidOperationExceptionalırsınız.
Note
bir IOExceptionalırsanız, özelliğine InnerException bir neden SocketExceptionolup olmadığını denetleyin. Bu durumda, ErrorCode özelliğini kullanarak belirli bir hata kodunu alın ve hatanın ayrıntılı açıklaması için Windows Sockets sürüm 2 API hata kodu belgelerine bakın.
Şunlara uygulanır
Read(Byte[], Int32, Int32)
- Kaynak:
- NetworkStream.cs
- Kaynak:
- NetworkStream.cs
- Kaynak:
- NetworkStream.cs
- Kaynak:
- NetworkStream.cs
- Kaynak:
- NetworkStream.cs
'den NetworkStream verileri okur ve bir bayt dizisine depolar.
public:
override int Read(cli::array <System::Byte> ^ buffer, int offset, int count);
public:
override int Read(cli::array <System::Byte> ^ buffer, int offset, int size);
public override int Read(byte[] buffer, int offset, int count);
public override int Read(byte[] buffer, int offset, int size);
override this.Read : byte[] * int * int -> int
override this.Read : byte[] * int * int -> int
Public Overrides Function Read (buffer As Byte(), offset As Integer, count As Integer) As Integer
Public Overrides Function Read (buffer As Byte(), offset As Integer, size As Integer) As Integer
Parametreler
- buffer
- Byte[]
dosyasından okunan Byteverileri depolamak için bellekteki konum olan tür NetworkStream dizisi.
- offset
- Int32
Verilerin depolanacağını konum buffer .
- countsize
- Int32
'den NetworkStreamokunacak bayt sayısı.
Döndürülenler
Sıfır (0) ile istenen sayı arasındaki arabelleğe okunan toplam bayt sayısı. yöntemi yalnızca sıfır bayt istendiyse veya eş yuva düzgün bir kapatma gerçekleştirdiğinden kullanılabilir bayt sayısı fazla olmadığında sıfır (0) döndürür.
Özel durumlar
buffer, null'e eşittir.
offset 0'dan küçüktür.
-veya-
offset , uzunluğundan bufferbüyüktür.
-veya-
size 0'dan küçüktür.
-veya-
size, eksi bufferuzunluğundan offset büyüktür.
NetworkStream, okumayı desteklemez.
Kapalı NetworkStream .
Örnekler
Aşağıdaki kod örneği, 'den NetworkStream bir arabelleğe veri okur. Kullanılabilir veriler varsa, akışın sonuna ulaşılana kadar okumaya devam eder ve alınan verileri öğesine StringBuilderekler.
byte[] myReadBuffer = new byte[1024];
StringBuilder myCompleteMessage = new StringBuilder();
int numberOfBytesRead = myNetworkStream.Read(myReadBuffer, 0, myReadBuffer.Length);
// Read all the data until the end of stream has been reached.
// The incoming message may be larger than the buffer size.
while (numberOfBytesRead > 0)
{
myCompleteMessage.Append(Encoding.ASCII.GetString(myReadBuffer, 0, numberOfBytesRead));
numberOfBytesRead = myNetworkStream.Read(myReadBuffer, 0, myReadBuffer.Length);
}
// Print out the received message to the console.
Console.WriteLine("You received the following message : " + myCompleteMessage);
Açıklamalar
Bu yöntem verileri içine buffer okur ve başarıyla okunan bayt sayısını döndürür. İşlem Read , parametresi tarafından count belirtilen bayt sayısına kadar kullanılabilir olduğu kadar veri okur.
Note
özelliğini çağırarak NetworkStream öğesinin CanRead okunabilir olup olmadığını denetleyin. Okunamayan bir NetworkStream öğeden okumaya çalışırsanız, bir InvalidOperationExceptionalırsınız.
Note
bir IOExceptionalırsanız, özelliğine InnerException bir neden SocketExceptionolup olmadığını denetleyin. Bu durumda, ErrorCode özelliğini kullanarak belirli bir hata kodunu alın ve hatanın ayrıntılı açıklaması için Windows Sockets sürüm 2 API hata kodu belgelerine bakın.