2010-02-10 72 views
2

我有一个非常简单的二进制文件格式,我希望创建一个编辑:创建二进制文件的编辑器

  • 能够加载文件
  • 能够保存文件
  • 允许用户可以改变各个领域等的价值
  • 能够使用的格式的旧版本的文件转换为新的版本

鄂毕我真的可以用C#,Python等写这个东西......但是我想知道是否有更容易的选项来创建一个像这样的基本编辑器,它只允许我描述文件的内容和任何条件/验证,而不必自己写所有的IO和编辑代码?

+0

您可能会搜索“资源编辑器”。这些生物的确切功能规格差别很大,但它们都是关于在另一个层次操作格式化的二进制数据。 – dmckee 2010-02-10 18:20:44

回答

2

处理这个问题的最简单方法是编写软件将二进制文件转换为文本文件和从文本文件转换二进制文件。然后您可以使用任何文本编辑器编辑数据。编辑完成后,运行该工具将其转换回二进制。

这也可以很容易地转换到和来自不同版本。

这种方法的一些问题是浮点数的精确度损失,如果二进制文件非常大,则需要花费时间进行转换,有时候人们会忘记运行转换工具来更新实际的二进制副本。

+0

正常的文本编辑器不会这样做,因为用户可以在文本编辑器中自由插入或删除字符,这有效地破坏了二进制格式。 – Codism 2010-02-10 18:15:27

+1

@Codism:我认为你不了解我的想法。我的建议是编写一个从文本转换为二进制的程序。把它看作汇编和反汇编。在编辑器中插入或删除的任何字符都由编译器处理,或者程序发出错误消息,然后他们返回来修复它。 – 2010-02-10 18:26:53