将XML字符串资源嵌入C 项目
Embedding XML string resource in C++ project
我有一个C 插件项目,需要翻译。因此,我创建了一个可用于访问字符串的字典类。但是,我不确定存储字符串的最佳方法是什么。我正在考虑创建一个XML文件,并将所有字符串存储在其中的不同地区,以一个变量名称,例如
<sHello>
<en_GB>Hello</en_GB>
<fr_FR>Bonjour</fr_FR>
...
</sHello>
但是,我宁愿不必与其他分销商一起分发XML文件。插件需要是跨平台,因此我正在Visual Studio和Xcode中的Mac OS版本中开发Windows版本。最好是,在我的字典类中,用于访问XML值的C 代码在两个平台上都是相同的,这意味着我只能将XML包括在相应的项目中,而不必担心维护2个单独的代码库。
是否可以以不需要分发的方式嵌入XML文件作为编译资源?
分发XML文件有什么问题?
如果您真的不想分发XML文件,则可以制作一个小型实用程序,该程序将XML文件转换为c 源文件,例如:
// autogenerated by <put your fancy name here>
// Don't hand edit this source file
const char xmlfile[] = "<sHello>
<en_GB>Hello</en_GB>
<fr_FR>Bonjour</fr_FR>
...
</sHello>";
而不是XML,您可以使用任何其他合适的格式,例如JSON或您认为最适合自己的需求的任何其他格式。
相关文章:
- 使用C++库在Android项目中修改gradle中的cmake参数,用于插入指令的测试
- 无法在 CLion 中构建 C++ 项目
- 运行同一解决方案的另一个项目的项目
- CMake-按正确顺序将项目与C运行时对象文件链接
- 如何在选项卡视图Qt中设置一个新项目,并保存以前的项目
- 欧拉项目#8答案是大以获得有效答案
- 从链接列表c++中删除一个项目
- Cppcheck生成xml转储文件
- CMake项目Boost库错误:Boost/config/compiler/gcc.hpp:165:10:致命错误:cs
- 既然存在危险,为什么项目要使用-I include开关
- cmake在我的项目中所需的所有静态库都不成功
- QT通过C++添加映射QML项目
- 我的项目不会像"undefined reference to `grpc::g_core_codegen_interface'"那样使用未定义的引用错误进行编译
- 在linux上调试巨大的C++项目
- 在其他文件中创建类时在 c++ 项目中不起作用
- 将XML字符串资源嵌入C 项目
- 使用OpenCV校准了我的相机.如何将输出 xml 中的系数应用于我未来的项目
- qt项目代码到xml文件的转换
- 在NetBeans中为我的C++项目添加一个XML文件
- 将带有XML命令和大量内存项目数据的本地c++服务器移植到webservice.如何做以及使用哪个框架