如何使用C或C++阅读简单的文件格式?以适当的方式使用C/C++读取文件格式
例如,采取波前obj文件格式,样品:
# this is a box
o 1
v -0.5 -0.5 0.5
v -0.5 -0.5 -0.5
v -0.5 0.5 -0.5
v -0.5 0.5 0.5
v 0.5 -0.5 0.5
v 0.5 -0.5 -0.5
v 0.5 0.5 -0.5
v 0.5 0.5 0.5
usemtl Default
f 4 3 2 1
f 2 6 5 1
f 3 7 6 2
f 8 7 3 4
f 5 8 4 1
f 6 7 8 5
由于文件可以是相当大的,我与操作员[]制成的中间类(FileBuffer)。它只有每个内存中有4096字节的文件,并在需要时读取新的部分。 文件格式非常简单,但我不喜欢使用像flex/bison这样的东西。这只会使问题复杂化。
什么是解释这种(种)文件的正确方法?目前我有很多嵌套for/while循环和许多计数器保持跟踪。还有许多switch/elseif语句。我怎样才能使这个代码更易于维护和更加结构化?
谢谢。
你问关于C或C++?它们是不同的语言,所提供的解决方案也可能不同。 – 2011-04-15 16:02:14
@Rob Adams OP“用操作符[]创建了一个中间类,”听起来像C++ – Cubbi 2011-04-15 16:06:25