이진 리더를 사용하여 들어오는 이진 데이터의 바이트를 들여다보고 싶습니다. PeekChar를 사용하면 UTF-8 인 경우에만 제대로 작동합니다. 그렇지 않으면 "출력 문자 버퍼가 너무 작아 인코딩 된 유니 코드 (UTF-8) '대체 문자'를 포함 할 수 없습니다.C#의 이진 리더 peek 바이트
인코딩과 관계없이 이진 리더가 1 바이트를 들여다 볼 수있는 방법이 있습니까?
Stream stream = new MemoryStream(buffer);
BinaryReader reader = new BinaryReader(stream);
type = (uint)reader.PeekChar(); // Throws error I mentioned for a particular case
데이터 텍스트입니까? UTF8은 멀티 바이트 문자를 가질 수 있습니다. 다음 문자 나 다음 바이트를 찾고 있습니까? –
@ScottChamberlain 아니요. 이진 데이터입니다. 나는 다음 바이트를 찾고있다. –