读/写文件头

时间:2012-07-24 06:51:22

标签: objective-c ios c file-io header

我正在尝试编辑文件的文件头。但是,如果我从文件(NSData)获取字节,我无法看到或知道标头开始和有效负载启动的位置。因此,当我想添加签名或其他内容时,这是不可能的。

有人能指出我正确的方向吗?

iOS中的文件头是什么样的?我也找不到统一的标题格式,这使得它更难以阅读。

要点: 我想知道标题的开头和结尾。 我想编辑这个标题。 我想知道文件头的结构。

1 个答案:

答案 0 :(得分:1)

iOS中的文件头看起来像任何其他操作系统中的文件头。它可以是你想要的任何东西,并且可以根据你的意愿长短。如果你想让它变成可变长度,那么一种方法是用幻数(实际上是一个四字母的UTF-8字符串,意味着重要的东西)启动它,然后可能是32-位头长度,以little-endian编码(因为iOS和OSX是little-endian),然后是你需要编码的任何东西。

有关当前存在哪些文件头的示例,请查看file命令并查看/usr/share/file/magic/中的文件。它通常使用文件头来确定文件的类型。