微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

c – XML与YAML对于2D RPG的JSON

这个问题在这里已经有一个答案:> Is there a C++ library to read JSON documents into C++ objects? 4个
我不知道是否对C 2D RPG使用XML,YAML或JSON.

这是我的想法:

>我需要一些简单的东西,不仅可以保存播放器数据,还可以保存环境数据,如对象(x,y)坐标;加载时间日期;图形配置等
>我需要一些灵活的,易于使用的东西,而且重量轻,而且功能强大可以处理上述.

哪个是最好的选择?我在JavaScript中有JSON的经验,但不是C.有没有什么好的参考解析JSON在C如果这是去的路线?

编辑

老实说,如果一个文本文件看起来像是这样的最简单和最有效的解决方案(特别是如果我可以把它写成二进制文件),那么我都是耳朵.

编辑2

随时提供其他建议.

解决方法

我会用最简单的东西来满足你的要求.

如果您不需要分层存储,那么平面表格文件比其他任何东西都要容易得多.所有你需要做的是读取磁盘上的行并在标签上拆分.

如果您正在查看更多的键/值对类型存储(而不是事物列表),那么INI files可以是合理的.这种格式有很大的灵活性,尽管推理这个格式在你敲诈它时可以不那么平易近人.

如果您需要层次结构,则JSON可能会更简单.有很多语言的JSON库,听起来你已经很熟悉了.

https://stackoverflow.com/questions/245973/whats-the-best-c-json-parser

sqlite可能是另一种选择. sql中有龙,但是在sqlite周围有一个很好的C包装,它可以管理.在我看来,主要的好处是ACID.

YAML规格看起来有点长,所以我可以猜到它有更多的厨房水槽.只是撇去libyaml文档,API看起来有点像过去使用的SAX接口.我没有一个后验知识,但是我没有理由开始使用它,将会保持沉.

XML很难处理,不要选择加入.

无论选择哪一个,都可以编写尽可能少的代码来管理它.你真的想写你的引擎将先使用的类.然后担心序列化它们.如果让你的序列化影响你的班级设计,你可能会后悔.

原文地址:https://www.jb51.cc/c/110606.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐