NetworkStream.Read Método
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Sobrecargas
| Nombre | Description |
|---|---|
| Read(Span<Byte>) |
Lee los datos de NetworkStream y los almacena en un intervalo de bytes en memoria. |
| Read(Byte[], Int32, Int32) |
Lee los datos de NetworkStream y los almacena en una matriz de bytes. |
Read(Span<Byte>)
- Source:
- NetworkStream.cs
- Source:
- NetworkStream.cs
- Source:
- NetworkStream.cs
- Source:
- NetworkStream.cs
- Source:
- NetworkStream.cs
Lee los datos de NetworkStream y los almacena en un intervalo de bytes en memoria.
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
Parámetros
Una región de memoria para almacenar los datos leídos de .NetworkStream
Devoluciones
Número total de bytes leídos en el búfer, entre cero (0) y la longitud del búfer. El método devuelve cero (0) solo si se solicitó cero bytes o si no hay más bytes disponibles porque el socket del mismo nivel realizó un apagado correcto.
Excepciones
NetworkStream no admite la lectura.
NetworkStream Está cerrado.
Comentarios
Este método lee tantos datos como están disponibles en el buffer parámetro y devuelve el número de bytes leídos correctamente.
Note
Compruebe si se NetworkStream puede leer mediante una llamada a la CanRead propiedad . Si intenta leer desde un NetworkStream objeto que no es legible, obtendrá un InvalidOperationException.
Note
Si recibe un IOException, compruebe la InnerException propiedad para determinar si fue causada por .SocketException Si es así, use la propiedad ErrorCode para obtener el código de error específico y consulte el código de error de Windows Código de error de la API de sockets versión 2 para obtener una descripción detallada del error.
Se aplica a
Read(Byte[], Int32, Int32)
- Source:
- NetworkStream.cs
- Source:
- NetworkStream.cs
- Source:
- NetworkStream.cs
- Source:
- NetworkStream.cs
- Source:
- NetworkStream.cs
Lee los datos de NetworkStream y los almacena en una matriz de bytes.
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
Parámetros
- buffer
- Byte[]
Matriz de tipo Byte que es la ubicación en la memoria para almacenar los datos leídos de .NetworkStream
- offset
- Int32
Ubicación en para buffer empezar a almacenar los datos.
- countsize
- Int32
Número de bytes que se van a leer de .NetworkStream
Devoluciones
Número total de bytes leídos en el búfer entre cero (0) y el recuento solicitado. El método devuelve cero (0) solo si se solicitó cero bytes o si no hay más bytes disponibles porque el socket del mismo nivel realizó un apagado correcto.
Excepciones
buffer es null.
offset es menor que 0.
O bien
offset es mayor que la longitud de buffer.
O bien
size es menor que 0.
O bien
size es mayor que la longitud de buffer menos offset.
NetworkStream no admite la lectura.
NetworkStream Está cerrado.
Ejemplos
En el ejemplo de código siguiente se leen los datos de en NetworkStream un búfer. Si los datos están disponibles, continúa leyendo hasta que se alcanza el final de la secuencia, anexando los datos recibidos a .StringBuilder
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);
Comentarios
Este método lee los datos en buffer y devuelve el número de bytes leídos correctamente. La Read operación lee tantos datos como estén disponibles, hasta el número de bytes especificados por el count parámetro .
Note
Compruebe si se NetworkStream puede leer mediante una llamada a la CanRead propiedad . Si intenta leer desde un NetworkStream objeto que no es legible, obtendrá un InvalidOperationException.
Note
Si recibe un IOException, compruebe la InnerException propiedad para determinar si fue causada por .SocketException Si es así, use la propiedad ErrorCode para obtener el código de error específico y consulte el código de error de Windows Código de error de la API de sockets versión 2 para obtener una descripción detallada del error.