BinaryReader
을 사용하여 BigEndian 정보를 읽는 데 다음 코드를 사용하지만 효율적인 방법인지는 확실하지 않습니다. 더 나은 해결책이 있습니까?C에서 빅 엔디안 데이터를 효율적으로 읽는 방법
여기 내 코드입니다 :
// some code to initialize the stream value
// set the length value to the Int32 size
BinaryReader reader =new BinaryReader(stream);
byte[] bytes = reader.ReadBytes(length);
Array.Reverse(bytes);
int result = System.BitConverter.ToInt32(temp, 0);
감사합니다. 매우 흥미 롭습니다. 그러나 아이디어를 올바르게 받았는지, 4 바이트 이상을 읽는 방법을 설명 할 수 있습니까? –
더 큰 길이의'ReadBytes'를 호출 한 다음 다른'i'를 사용하여 배열의 다른 위치에있는 정수를 읽습니다. 그러나 이것은 벤치마킹 후에 만 수행해야하는 최적화입니다. – CodesInChaos
아주 좋습니다. 감사합니다 –