컴퓨터/C#

[C#] Stream.Read 메서드에 관하여..

호마 2015. 6. 26. 21:55


Stream.Read Method

1
2
3
4
5
public abstract int Read(
    byte[] buffer,
    int offset,
    int count
)
cs


매개 변수

buffer
형식: System.Byte[]
바이트 배열입니다. 이 메서드가 반환될 때 버퍼에는 지정된 바이트 배열의 값이 offset 및 (offset + count - 1) 사이에서 현재 소스로부터 읽어온 바이트로 교체된 상태로 포함됩니다. 
offset
형식: System.Int32
현재 스트림에서 읽은 데이터를 저장하기 시작하는 buffer의 바이트 오프셋(0부터 시작)입니다. 
count
형식: System.Int32
현재 스트림에서 읽을 최대 바이트 수입니다. 

반환 값

형식: System.Int32
버퍼로 읽어온 총 바이트 수입니다. 이 바이트 수는 현재 바이트가 충분하지 않은 경우 요청된 바이트 수보다 작을 수 있으며 스트림의 끝에 도달하면 0이 됩니다. 





이것은 MSDN에 나와있는 메소드의 설명이다.



count 매개변수가 의미하는게 '읽은' 바이트의 수라고 생각했으나 아니였다....



위와 같이 count 매개변수는 스트림이 '읽어올 수 있는' 최대 바이트 수를 지정할 뿐이다. 


실제로 스트림이 '읽은' 바이트의 수는 리턴 값으로 반환된다.




다음은 이와 관련된 내용의 좋은 글이다.




아직 자세히 읽어보진 않았다..ㅋㅋ