我試圖打開一個二進制文件並讀取一個類的任務內容。即使在進行研究之後,我在嘗試打開並打印二進制文件的內容時遇到了任何問題。我甚至不知道我應該得到什麼,如何檢查它是正確的,但我知道沒有任何東西(這是我目前得到的)是不好的。下面是我從這個網站在C中打開二進制文件
#include<stdio.h>
int main()
{
FILE *ptr_myfile;
char buf[8];
ptr_myfile = fopen("packets.1","rb");
if (!ptr_myfile)
{
printf("Unable to open file!");
return 1;
}
fread(buf, 1, 8, ptr_myfile);
printf("First Character: %c", buf[0]);
fclose(ptr_myfile);
return 0;
}
當此打印,我得到了搜索代碼「第一個字符:」沒有別的印刷。也許它不能在終端中正常打印?我不知道,任何幫助將不勝感激,謝謝
看來你正確地調用它。用文本文件嘗試一下。 –
如果您使用十六進制編輯器查看您想要讀取的文件,它會顯示第一個字符。或者你可以打印字符的值,而不是試圖將其轉換爲字符,只是爲了檢查它 - 它可能是一個空白字符。請注意,如果您使用以Unicode編碼的文本文件,則文件的開頭可能會有一個字節順序標記。 –