2015-05-04 120 views
-1

我想将一个字符串作为二进制数据写入文件。 这是我的代码:将一个字符串作为二进制数据写入文件 - C

FILE *ptr; 
ptr = fopen("test.dat","wb"); // w for write, b for binary 
fprintf(ptr,"this is a test"); 
fclose(ptr); 

我运行程序并打开文件后TEST.DAT,我读“这是一个测试”,而不是二进制数据,我想。任何人都可以帮助我?

回答

0

记事本对二进制数据进行解码并显示ASCII等效代码。

如果您需要查看存储数据的二进制等效值,请使用十六进制查看器软件并在其中打开您的文件。 WinHex中。

+0

因此,我在这里用来将字符串保存为二进制数据的代码实际上是正确的? – ShizzleMyDizzle

2

你似乎有些困惑;典型计算机中的所有数据都是二进制的打开文件进行二进制访问的事实意味着它将具有换行结束转换完成后,它不会更改您编写的数据的解释。

你只是在看二进制数据的表示是一堆人类可读的字符。不知道你期望找到什么,那毕竟是你放入文件的东西。

字母't'由二进制序列01110100(假设采用ASCII兼容编码)表示,但许多程序将显示为't'。

相关问题