C# 原始字节文件中的头选项

C# 原始字节文件中的头选项,c#,.net,file,header,C#,.net,File,Header,我有一个大的原始数据文件(高达1GB),其中包含来自USB数据记录器的原始样本 我需要存储与文件相关的额外信息(采样率、描述、触发点、最后一次搜索位置等),并希望将其添加为某种头 理想情况下,头文件应该是可读的和灵活的,所以到目前为止,我已经排除了在头文件中进行某种二进制序列化的可能性 我还希望避免两个单独的文件,因为它们在复制或备份时可能会分开。我记得有人告诉我,较新的*.x Microsoft Office文档实际上是一个zip文件中的许多文件。有没有一个简单的方法来实现这一点?我还能将快速

我有一个大的原始数据文件(高达1GB),其中包含来自USB数据记录器的原始样本

我需要存储与文件相关的额外信息(采样率、描述、触发点、最后一次搜索位置等),并希望将其添加为某种头

理想情况下,头文件应该是可读的和灵活的,所以到目前为止,我已经排除了在头文件中进行某种二进制序列化的可能性

我还希望避免两个单独的文件,因为它们在复制或备份时可能会分开。我记得有人告诉我,较新的*.x Microsoft Office文档实际上是一个zip文件中的许多文件。有没有一个简单的方法来实现这一点?我还能将快速查找时间保留到原始文件吗

更新

我开始使用二进制序列化程序,并发现这是一个痛苦。我最终使用了xml序列化程序,因为我更习惯于使用它。
我在文件的开头为xml保留了一些空间。简单

当您说要使标题可读时,建议在文本编辑器中打开文件。考虑到文件大小和(我假设)文件的其余部分是非人类可读的二进制数据,您真的想这样做吗?如果是,只需将文本头数据写入二进制文件的开头-打开文件时,它将可见,但当然,文件的其余部分看起来像垃圾

您可以创建一个未压缩的ZIP存档,它可以让您直接查找二进制数据。有关创建ZIP存档的信息,请参见以下内容: