据了解,在所有文件的末尾,特别是文本文件,都有一个十六进制代码EOF 或者NULL特点。当我们想编写程序并读取文本文件的内容时,我们将发送读取功能,直到收到该EOF HEXCODE为止。
我的问题:我下载了一些工具来查看文本文件的十六进制视图。EOF (文件结尾/null)或EOT(文本结尾)
ASCII/Hex code tables :
This is output of Hex viewer tools:
Note : My input file is a text file that its content is “Where is hex code of “EOF”?”
感谢您的时间和考虑。
答案
没有eof角色这样的东西。操作系统确切地知道文件包含多少个字节(与其他元数据一起存储(例如权限,创建日期和名称),因此可以告诉程序试图读取十个字节的第11个字节:到达文件的末尾,没有更多的字节可读取。
实际上,例如," eof"值例如由c函数返回getchar
明确地是一个int
价值在字节范围之外,因此不可能将其存储在文件中!
有时,某些文件格式坚持添加nul终结器(可能是因为通常将字符串存储在c中),尽管通常这些划界多个记录在一个文件中,而不是整个文件。这种装饰通常会取消文件被视为"文本文件"的资格。
ASCII代码像ETX和NUL一样可以追溯到电信环境和朋友的时代。nul在C中用于在记忆中字符串,但这对文件系统没有影响。