分享

二进制与文本文件

 心不留意外尘 2016-04-16
2012.11
FROM http://blog./uid-22834118-id-3403299.html
在unix-like os上,可以不去考虑C语言的标准库中的标志b,这个标志没有任何作用。
在win上,b标志的作用是很明显的。当用fopen("w")打开文件,且向文件中写入0x0a时会多写一个字符0x0d。而在使用fopen("wb")时则不会。
 
二进制写文件指的是直接按照数据在内存中的表现形式写入文件。例如,如果int型数据在内存中用   4   个字节表示,则写这个int数据的时候直接把对应的内存中   4   个字节的内容写入文件。在此过程中数据不需要做任何转换,所以效率较高。  
   
  数据有字符型和非字符型(数)两种。按文本方式写文件指的是将数据转换为对应的字符型数据之后再写入文件。对于字符型数据,由于其本身就是ASCII码字符,一般不必转换,直接写入文件。但是,由于不同的系统对于换行符('\n')有不同的处理(转换)方式,在有的系统(如Windows)下也会对   '\n'   作适当的转换。  

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多