1
我正在編寫一個將文本文件轉換爲二進制文件的C程序,反之亦然。我的第一個問題是關於以「w」模式打開文件。是否需要檢查輸出文件是否正確打開?以寫入模式在C中打開文件
FILE *output;
output = fopen("output.bin", "w");
if(output == NULL)
{ printf("Error opening output file\n");}
基本上我的問題是,是否輸出將永遠實際上== NULL。因爲如果打開輸出時出現問題,它不會創建一個名爲「output.bin」的新文件嗎?
另外我的另一個問題是字符如何實際保存在二進制文件中。我知道我應該將每個字符保存爲一個無符號字符,因此它可以具有0到255之間的值,然後我應該將該字符寫入輸出文件。如果有人能幫助我或指出我朝着正確的方向,那麼發生這種事情的實際邏輯路徑是沒有意義的,我將不勝感激!
什麼意思是「將文本文件轉換爲二進制文件,反之亦然」? – e0k
「是否需要檢查輸出文件是否正確打開」。是的,你需要檢查返回值。至少這是一個好習慣。當然,開放可能會失敗,原因很多。例如,沒有權限在當前目錄中創建文件。或文件已存在但不可寫入。 – kaylum
我應該有二進制文件保存L字節(字符串)和4字節(整數),其中L =字符串的長度。 1字節是L.的值我希望我能解釋更多,但我仍然試圖瞭解如何存儲和表示二進制文件 – John