檔案使用二進位制模式開啟情況下的換行的方法

2021-06-04 15:57:56 字數 620 閱讀 8334

今天用vs2010寫個簡單的用來記錄軟體的日誌到檔案的程式,使用\n

所以在使用二進位制模式開啟檔案,寫入的時候,換行請使用\r\n  .

而在文字模式下開啟檔案寫入時, 用\n即可以了,(使用ultraedit檢視file1和file2的二進位制,發現file2多了乙個\r字元(0x0d), 這就是文字模式的原因了。

對於不同的平台,預設的換行是不一樣的。。。

測試**如下:

#include #include #include #include int main()

; char *str2[1024] = ;

file1 = fopen("test1.txt","rb");

file2 = fopen("test2.txt","r");

assert(file1 && file2);

int readlen1 = fread(str1, 1, len, file1);

assert(readlen1 == len);//判斷讀出的位元組數與寫入的是否相等

printf("file1:\n");

printf("%s",str1);

return 0;

}

文字模式 二進位制模式 文字檔案 二進位制檔案

這幾個概念很常見但是也容易搞混。前兩者是相反的意思,後兩者是一對。1.文字模式 textmode 和二進位制模式 binarymode 的 區別0.無論你用哪種語言進行程式設計,也無論你用哪個函式進行檔案操作 庫函式也好,直接作業系統api也好 最終的檔案開啟的操作都是由作業系統來進行的,因此各種語...

檔案開啟的文字模式和二進位制模式

首先要明白一點,就是無論你用哪種語言進行程式設計,也無論你用哪個函式進行檔案操作 庫函式也好,直接作業系統api也好 最終的檔案開啟的操作都是由作業系統來進行的,因此各種語言的情況從本質上來說都是相同的。用二進位制模式開啟乙個檔案的時候,檔案本身的內容和你編寫程式時用函式讀到的內容完全相同 或者說和...

二進位制檔案

本質上是文字檔案是把檔案資訊先轉化成以字元編碼的ascii碼,再儲存ascii的二進位制 而二進位制檔案是直接把檔案資訊編碼成二進位制儲存。因此在讀取的時候要考慮記憶體中二進位制 應該怎麼樣解釋。二進位制檔案的讀取是是要告訴元素的型別 編碼方式 文字檔案則預設為char型別。文字檔案是一種特殊的二進...