Null로 끝나는 문자열 (및 기타 이진 데이터) 일련 번호로 일련 번호가 매겨진 네트워크 연결에서 메시지를 읽습니다. NULL을 찾을 때까지 BinaryReader를 사용하여 한 번에 char을 읽을 수있었습니다..NET에서 Null 종료 문자열을 deserialize하는 가장 좋은 방법은 무엇입니까?
여전히 더 효율적인 방법이 있습니까? 길이가 64 자 미만인 문자열을 기대하고 있지만 길어질 수 있습니다.
Null로 끝나는 문자열 (및 기타 이진 데이터) 일련 번호로 일련 번호가 매겨진 네트워크 연결에서 메시지를 읽습니다. NULL을 찾을 때까지 BinaryReader를 사용하여 한 번에 char을 읽을 수있었습니다..NET에서 Null 종료 문자열을 deserialize하는 가장 좋은 방법은 무엇입니까?
여전히 더 효율적인 방법이 있습니까? 길이가 64 자 미만인 문자열을 기대하고 있지만 길어질 수 있습니다.
바이트 단위로 읽는 것이 합당한 옵션이라고 생각하지만 BufferedStream을 사용하여 기본 스트림의 IO를 최소화 할 수 있습니다.
전체를 문자열로 읽어 들인 다음 String.Split을 사용하여 null을 나눕니다.
문자열은 .NET에서 Null로 끝나지 않습니다.
그는 전체 메시지가 얼마나 오랫동안 지속되었는지 (또는 메시지가 종료되는지 여부)를 말하지 않았습니다. 모든 것을 읽는 좋은 기회는 실현 가능하지 않습니다. –
다른 한편으로는 질문에 정보가 충분하지 않아 실현이 불가능합니다. OP가 없다면 다른 사람을 도울 수있는 좋은 아이디어입니다. – ScottS
사실이 줄 사이를 읽는다면 정보가 충분합니다. 그는 winpcap 또는 simliar API를 사용하여 네트워크 연결에서 입력 데이터를 얻고 있다고 언급했습니다. 따라서 Matthew가 말했듯이, 그는 계속적인 데이터 흐름에서 의견을 끌어낼 가능성이 큽니다. –