1.对于字符的输入和输出,文本文件与二进制文件没有区别,但对于数值型的数据,在对文本文件进行I/O 时,要进行格式转换,而二进制文件不需要。如:向文本文件输出 12345 时,由于 12345 是一个整数,在内存中以4个字节的二进制补码格式存放,输出到文本文件时要将每一位数字转换成ASCII码,即 31 32 33 34 35。
2.由于C语言的操作单位是字节所以,不存在上述第一条数值型数据时的区别;也就是说
FILE *file=fopen("D:\\translation\\test.txt","wb");
int i=97;
putw(i,file);
或者
FILE *file=fopen("D:\\translation\\test.txt","wt");
int i=97;
putw(i,file);
test.txt中的数据都是61 00 00 00
3.以文本文件进行写文件时,fputc('\n',file);在文件中其实是写入了两个字符'\r\n';进行读文件是,ch=fgetc(file),将自动忽略字符'\r’;而用流文件进行读写时,不会有上述操作;