intelHex 파일에서 이진 파일을 만들려고합니다. Iside는 intelHex 파일입니다. 이진 파일 안에 데이터를 써야하는 데이터와 주소가 있습니다. 마지막은 우리가 파일의 끝 이잖아 알 수 있기 때문에 그IntelHex에서 C#으로 이진 파일 만들기
:10010000214601360121470136007EFE09D2190140
:100110002146017EB7C20001FF5F16002148011988
:10012000194E79234623965778239EDA3F01B2CAA7
:100130003F0156702B5E712B722B732146013421C7
:00000001FF
그래서 내가 데이터를 여기에 4 개 라인을 가지고있는 것처럼 IntelHex 파일을 찾습니다. 여기 내가 여기에 파일
while (!streamReader.EndOfStream)
{
string temp = String.Empty;
int address = 0;
line = streamReader.ReadLine();
// Get address for each data
address = Convert.ToInt32(line.Substring(3, 4), 16);
// Get data from each line
temp = line.Substring(7, 2);
if (temp == "01")
break;
else
{
temp = line.Substring(9, line.Length - 11);
string[] array = new string[(temp.Length/2)];
int j = 0;
for (int i = 0; i < array.Length; ++i)
{
array[i] = temp[j].ToString() + temp[j + 1].ToString();
j = j + 2;
}
temp = String.Empty;
for (int i = 0; i < array.Length; ++i)
{
temp = temp + Convert.ToChar(Convert.ToInt32(array[i], 16));
}
}
binaryWriter.Seek(address, SeekOrigin.Begin);
binaryWriter.Write(temp);
binaryWriter.Flush();
}
Console.WriteLine("Done...\nPress any key to exit...");
에게 문제를 만들하고있어 무엇을, 어떤 장소에서 이진 파일의 데이터는 intelHex 파일의 데이터와 동일하지 않습니다. 파일에 임의의 데이터가 추가 된 것처럼 보입니다. 어디에서 왔는지 모릅니다. 처음에는 intelHex 파일의 데이터 앞에 추가 데이터가 있다는 것을 보았습니다. 예를 들어, 첫 번째 데이터 라인은 21로 시작하지만 이진 파일에서는 21 전에 숫자 12가 있습니다. 여기서 무엇이 잘못되었는지는 알 수 없습니다. 누군가 나를 도울 수 있거나 C#에서 바이너리 파일을 만드는 데 유용한 정보를 찾을 수있는 곳으로 안내해 줄 수 있기를 바랍니다.
보고있는 임의의 데이터는 무엇입니까? (어쩌면 스크린 인쇄) – KevinDTimm