NetworkStream.Read 메서드
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
오버로드
| Name | Description |
|---|---|
| Read(Span<Byte>) |
데이터를 읽고 NetworkStream 메모리의 바이트 범위에 저장합니다. |
| Read(Byte[], Int32, Int32) |
데이터를 읽고 NetworkStream 바이트 배열에 저장합니다. |
Read(Span<Byte>)
- Source:
- NetworkStream.cs
- Source:
- NetworkStream.cs
- Source:
- NetworkStream.cs
- Source:
- NetworkStream.cs
- Source:
- NetworkStream.cs
데이터를 읽고 NetworkStream 메모리의 바이트 범위에 저장합니다.
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
매개 변수
에서 읽은 NetworkStream데이터를 저장할 메모리 영역입니다.
반품
버퍼로 읽은 총 바이트 수(0)와 버퍼 길이 사이입니다. 이 메서드는 0바이트가 요청되었거나 피어 소켓이 정상적인 종료를 수행했기 때문에 더 이상 바이트를 사용할 수 없는 경우에만 0을 반환합니다.
예외
읽기를 NetworkStream 지원하지 않습니다.
NetworkStream 닫혀 있습니다.
설명
이 메서드는 매개 변수에 buffer 사용할 수 있는 만큼의 데이터를 읽고 성공적으로 읽은 바이트 수를 반환합니다.
메모
속성을 호출하여 읽을 수 있는지 NetworkStream 확인합니다 CanRead . 읽을 수 없는 항목에서 NetworkStream 읽으려고 하면 .InvalidOperationException
메모
받는 IOException경우 속성을 확인 InnerException 하여 속성이 .에 의해 SocketException발생했는지 확인합니다. 그렇다면 ErrorCode 속성을 사용하여 특정 오류 코드를 가져오고 Windows Sockets 버전 2 API 오류 코드 설명서를 참조하여 오류에 대한 자세한 설명을 참조하세요.
적용 대상
Read(Byte[], Int32, Int32)
- Source:
- NetworkStream.cs
- Source:
- NetworkStream.cs
- Source:
- NetworkStream.cs
- Source:
- NetworkStream.cs
- Source:
- NetworkStream.cs
데이터를 읽고 NetworkStream 바이트 배열에 저장합니다.
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
매개 변수
- buffer
- Byte[]
에서 읽은 데이터를 저장할 메모리의 위치인 형식 Byte 의 NetworkStream배열입니다.
- offset
- Int32
데이터 저장을 시작할 위치 buffer 입니다.
- countsize
- Int32
에서 읽을 바이트 수입니다 NetworkStream.
반품
0과 요청된 개수 사이의 버퍼로 읽은 총 바이트 수입니다. 이 메서드는 0바이트가 요청되었거나 피어 소켓이 정상적인 종료를 수행했기 때문에 더 이상 바이트를 사용할 수 없는 경우에만 0을 반환합니다.
예외
buffer은 null입니다.
offset 가 0보다 작습니다.
-또는-
offset 가 .의 buffer길이보다 큰 경우
-또는-
size 가 0보다 작습니다.
-또는-
size 는 빼기의 길이 buffer 보다 큽다 offset.
읽기를 NetworkStream 지원하지 않습니다.
NetworkStream 닫혀 있습니다.
예제
다음 코드 예제에서는 버퍼로 NetworkStream 데이터를 읽습니다. 데이터를 사용할 수 있는 경우 스트림의 끝에 도달할 때까지 계속 읽고 수신된 데이터를 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);
설명
이 메서드는 데이터를 읽고 buffer 성공적으로 읽은 바이트 수를 반환합니다. 이 Read 작업은 매개 변수에 지정된 count 바이트 수까지 사용 가능한 만큼의 데이터를 읽습니다.
메모
속성을 호출하여 읽을 수 있는지 NetworkStream 확인합니다 CanRead . 읽을 수 없는 항목에서 NetworkStream 읽으려고 하면 .InvalidOperationException
메모
받는 IOException경우 속성을 확인 InnerException 하여 속성이 .에 의해 SocketException발생했는지 확인합니다. 그렇다면 ErrorCode 속성을 사용하여 특정 오류 코드를 가져오고 Windows Sockets 버전 2 API 오류 코드 설명서를 참조하여 오류에 대한 자세한 설명을 참조하세요.