摘要: 以前在windows下总喜欢使用CFile类来操作文件,最近改用fopen系列函数,却没想到一个不经意的问题让我调试了一整天。打开文件使用的代码如下:FILE* fh = fopen("c:/filename", "r");缺省情况下(当然可以进行设置),文件是以文本模式打开的,因为我们没有使用b标记。这个时候,如果文件数据中含有0x1a就有麻烦了。每当读到0x1a的时候,文件的位置会跳到4096(ftell返回的结果),如果文件小于4096字节的话,那么调用fgetc得到的结果是EOF。另外,ftell返回的结果也和文件的物理位置不一致,这使得我们在不 阅读全文
posted @ 2006-03-10 17:15 Goncely 阅读(419) 评论(0) 推荐(0) 编辑