先确认一下文件是二进制存的吗如果是,用记事本打开它应该是看不到数字的。不是说在记事本里输入字符1 2 3 4然后保存成number.dat,程序就能正确读取的
二进制读取的时候fopen偠写成
rb表示binary:二进制读写。
我不太懂我直接在记事本中输入十进制数字后,再保存的打开记事本是可以看到数字的。
这种情况怎么办
就跟scanf用法差不多,多一个参数填fp
你对这个回答的评价是?
先确认一下文件是二进制存的吗如果是,用记事本打开它应该是看不到数字的。不是说在记事本里输入字符1 2 3 4然后保存成number.dat,程序就能正确读取的
二进制读取的时候fopen偠写成
rb表示binary:二进制读写。
我不太懂我直接在记事本中输入十进制数字后,再保存的打开记事本是可以看到数字的。
这种情况怎么办
就跟scanf用法差不多,多一个参数填fp
你对这个回答的评价是?
你到底用二进制写 还是用ASCII码写文件你打开时记事本使用的是ASCII码。
用二进制方式创建文件文件开头需要写入0xff、0xfe两个字节,然后再写Unicode字符串(也是按二进制数据写入)
fwprintf需要一个FILE句柄,关键是看你创建FILE句柄时是否让这个文件以UNICODE形式存储数据了类似:
下面的示例来自MSDN: