我在写一个类似INI的配置文件,我想知道在C/C++中解析它的最佳方法。我在POSIX上写它,所以我会用#代替。没关系。我只想知道,是否有某种教程,解析事物或其他东西的文章。解析类INI配置文件
1
A
回答
3
有很多关于解析的教程和文章,但是你要处理的是如此微不足道,以至于它们中的大多数可能会过度杀伤。由于之前做过这种事情的次数,我会从looking开始,在一些已经实现了你想要的东西的现有代码中。
2
已经有大量的开源库,你可以在很少或不需要修改的情况下使用它们。 libini。
1
通常在C++基础知识中,boost有一个可以读取ini文件的库。实际上在两个库,这取决于你想要达到什么目的:
- 提升程序选项允许您从管理命令行或INI或混合源方案选择:http://www.boost.org/doc/libs/1_44_0/doc/html/program_options.html;
- 提升属性树为你做的工作:http://www.boost.org/doc/libs/1_44_0/doc/html/boost_propertytree/parsers.html
0
根据你实际有多少复杂的需要,你可能只使用与fgets()在一个循环中,并手动每行解析脱身(例如用strstr(),strchr(),strcmp()等)。如果您只需要获取一些值,那么在拖动解析库时毫无意义。
1
尝试配置。它是易于使用且灵活的C++库,用于配置文件解析(从最简单的INI到具有任意嵌套和语义检查的复杂文件)。仅头和跨平台。使用Boost C++库。
0
如果升压是你矫枉过正,试试这6 KB BSD许可的代码。 (INI Not Invented Here)是一个用C语言编写的简单的.INI文件解析器。它只有几页代码,而且它设计得很小且很简单,所以对嵌入式系统很有用。“
http://code.google.com/p/inih/
还有一个C++类,如果你喜欢的对象,而且它同时支持 “;”和“#”评论。
相关问题
- 1. 如何使用Config :: General解析INI风格的配置文件?
- 2. 解析配置文件
- 3. 解析配置文件值
- 4. 解析配置远程配置文件
- 5. 当amperstand(&)解析INI文件时,值为
- 6. 在java中解析Ini文件
- 7. 解析INI文件的优点/缺点
- 8. 如何解析ini文件与升压
- 9. 解析未命名的配对PHP ini文件
- 10. 解析PHP中的配置文件
- 11. mybatis xml配置文件无法解析
- 12. 自定义配置文件解析
- 13. 如何解析erlang的配置文件?
- 14. Ant和XML配置文件解析
- 15. 解析配置文件的Python脚本
- 16. PHP INI解析错误
- 17. c#类,方法或什么解析配置文件
- 18. 类型名称无法解析。请检查配置文件
- 19. 最好的PHP配置/ ini类?
- 20. 如何读取INI文件中的配置文件条目
- 21. 使用Python中的循环在.ini文件中设置配置解析器的已知数量的变量值
- 22. org.springframework.beans.factory.BeanDefinitionStoreException:无法解析配置类
- 23. 如何解析Apache配置文件,PHP配置,FTP服务器配置
- 24. PHP解析INI文件给我关于等号的错误
- 25. 如何解析的.ini文件到PowerShell的变量(S)
- 26. PHP的字符串比较错误解析ini文件
- 27. Eclipse和Xdebug不解析/etc/php5/conf.d中的其他ini文件
- 28. 需要解析ini文件中提取值
- 29. 如何解析elisp中的INI文件格式?
- 30. Perl如何解析包含变量的INI文件?
啊是的,但我的主要原因是如何将它们包含在我的GPL应用程序中。我不知道如何在我的应用程序二进制文件中提供版权。 – Jookia 2010-09-12 17:29:59
@Jookia:也许你可以在这里提出一个关于许可/版权问题的单独问题来解决这个问题? – 2010-09-12 18:06:01