以文本方式和二进制方式处理文件(不知道这句本身有没有问题)的时候,除了在处理回车换行符上的区别外,还有没有其他方面的不同?谢谢
解决方案 »
- 求 基于一阶导数图像增强 的源代码
- 为什么在工具栏里画不出组合框?
- g_dll=LoadLibrary("HookSleepDLL.dll");失败,返回0 是怎么了?HookSleepDLL.dll存在,求,谢999辈子
- windows对话框里如何显示 © ?
- VC中的C文件问题,急!!!!!!!
- 如何用VC安全删除USB设备
- 程序初始最大化,且不能改变大小和移动。(欢迎讨论)
- window下有什么函数可以实现精确的延时操作?
- 怎样在mshflexgrid控件的列上加一个排序箭头
- 在WIN2000下如何制作反拷贝反格式化的软盘,急急急
- 加载文件用的代码 放哪里?
- 请大家帮忙,谢谢,很急,在线等。
文件。 文本文件(也叫ASCII文件),它的每一个字节存放的都是一个ASCII代码。可以使用任何的文字处理程序打开。 文件一般有两种读写方式,文本方式和二进制方式。当我们按照文本方式往文件中写入数据时,一旦遇到换行字符(ASCII
为10),则会转换为回车-换行(ASCII为13、10)。在读取文件时,一旦遇到回车-换行的组合(即连续的ASCII 13、10),
则会转换为换行字符(ASCII为10)。当我们按照二进制方式往文件中写入数据,则将数据在内存中的存储形式原样输出到
文件中。 其中的任何一种方式都能够去访问上面介绍的文件形式。只是,如果使用文本方式访问二进制文件或用二进制方式访问
文本文件是,都不能过获得正确的显示。 例如,有一个整数10000,在内存中占了4个字节(在VC中整数都是4字节),其存储形式为0x00,00,20,10(将其转化为10
进制就是10000),二进制文件即按此存储。而文本方式存储为:
0x31,30,30,30,30,30
1 0 0 0 0 0
即将整数的每一个数字为转化为对应的数字字符。字符1在ASCII表中是0x31.一般来说,我们是不能正确阅读二进制文件
的,因为我们通常是用的文本方式(例如记事本)打开,是不能正确的显示的。例如上面的用二进制方式存储的10000,如
果用文本方式打开,通过查找ASCII码,0x00表示空(NULL),0x20表示空格(SP),0x10表示(SLE)对应的图形。 因此,如果把一个数字保存到文件中去,希望用记事本打开,能够正确地显示(记住:用记事本显示的是数字字符),则每一
位都要用对应的ASCII来保存。