파일 정보 : 처음 4 바이트에는 파일의 레코드 수가 포함됩니다. 다음 4 바이트는 첫 번째 레코드의 길이를 포함합니다. 다시 처음 기록한 후 4 바이트는 두 번째 레코드의 길이를 포함합니다. 전체 파일은 다음과 같습니다. 그래서 입력 파일을 읽고 처음 4 바이트는 건너 뜁니다. 그 후에 나는 곧 나오는 레코드의 길이를 줄 문자열에 레코드를 쓰고 그 과정을 반복 할 4 바이트를 읽을 필요가있다.C#에서 16 진수 모드로 입력 파일 읽기
나는 내가 얻고 자하는 것을 얻지 못했습니다. 예를 들면 다음과 같습니다. 7F CB 00 00의 경우 32715를 가져야합니다 (필자는 필요하지 않으며 건너 뛸 필요가 있음). 다음 4 바이트는 00 D3 00 00 00입니다. 211을 얻지 만 얻지는 못합니다.
도움을 주시면 감사하겠습니다.
private void button1_Click(object sender, EventArgs e)
{
FileStream readStream;
readStream = new FileStream(singlefilebox.Text,FileMode.Open,FileAccess.Read);
BinaryReader readBinary = new BinaryReader(readStream);
byte inbyte;
inbyte = readBinary.ReadByte();
string outbyte;
while (readBinary.BaseStream.Position < readBinary.BaseStream.Length)
{
inbyte = readBinary.ReadByte();
outbyte = Convert.ToString(inbyte);
}
코드의 실제 출력은 무엇입니까? 예상 된 결과와 비교하여 깨진 내용을 찾아내는 데 도움이됩니다. – Alex
바이트 순서가 생각하는대로 해석되지 않을 수 있습니다. http://en.wikipedia.org/wiki/Endianness –
7000에 대한 20300021100127241241 CB 00 00 00 D3 00 00 7F F1 F1 F1 F5 F8 F4 F3 7F .... – Victor