函数fopen是一个标准c函数,其功能是打开一个文件,之后便可以进行读或写的操作.其原型是这样的:
FILE *fopen( const char *filename, const char *mode );
第一个参数是要打开文件的名字(路径),第二个参数是打开文件所用的模式.
对于模式参数的w和wb,r和rb,w是以文本的形式进行写入,而wb是以二进制模式进行写入.
对于换行符数据0x0A,如果这么写:fp = fopen(str,"wb");可以得到正常数据0x0A,而fp = fopen(str,"w");遇到0x0A时,就会在其前面多一个0x0D.
如果有参数b,是以二进制方式打开,这种方式不会进行”回车符”和”换行符”的转换.而如果没有b,即单以w为参数的话,系统就把换行符0A转换为0D0A,因为windows是以0D0A为换行符的.
总结:打开模式中含有b,则要写入的或要读取的数据不会进行相应的转换,否则进行转换。