/*
功能:實現檔案編碼格式的判斷
通過乙個檔案的最前面三個位元組,可以判斷出該的編碼型別:
ansi: 無格式定義;(第乙個位元組開始就是檔案內容)
unicode: 前兩個位元組為fffe;
unicode big endian: 前兩位元組為feff;
utf-8: 前兩位元組為efbb,第三位元組為bf
*/#include #include #include // 讀取乙個檔案的最前面n個位元組,並以十六進製制形式輸出每個位元組的值
void readnbytes(char *filename, int n)
fread(buf, sizeof(unsigned char), n, fp);
fclose(fp);
printf("%s:\t", filename);
for(i = 0; i < n; i++)
printf("\n");
free(buf);
}void main()
; int i;
for(i = 0; i < 4; i++)
}
每個測試檔案中的內容都是:你what123456
執行結果為:
ansi.txt: c4 e3 77
unicode.txt: ff fe 60
ubigendian.txt: fe ff 4f
utf8.txt: ef bb bf
C語言判斷檔案編碼格式
功能 實現檔案編碼格式的判斷 通過乙個檔案的最前面三個位元組,可以判斷出該的編碼型別 ansi 無格式定義 第乙個位元組開始就是檔案內容 unicode 前兩個位元組為fffe unicode big endian 前兩位元組為feff utf 8 前兩位元組為efbb,第三位元組為bf inclu...
C語言判斷檔案編碼格式
功能 實現檔案編碼格式的判斷 通過乙個檔案的最前面三個位元組,可以判斷出該的編碼型別 ansi 無格式定義 第乙個位元組開始就是檔案內容 unicode 前兩個位元組為fffe unicode big endian 前兩位元組為feff utf 8 前兩位元組為efbb,第三位元組為bf inclu...
C 判斷txt檔案編碼格式
獲取檔案的編碼格式 public class encodingtype 通過給定的檔案流,判斷檔案的編碼型別 檔案流 檔案的編碼型別 public static system.text.encoding gettype filestream fs byte unicodebig new byte b...