尝试在C++中使用JSON Spirit将JSON写入文件

Trying to write a JSON to a file using JSON Spirit in C++

本文关键字:JSON Spirit 文件 C++      更新时间:2023-10-16

我正在尝试使用JSON Spirit将JSON写入文件。

我正在使用类似于网站上给出的示例的代码来执行此操作,如下所示:

json_spirit::Object emotion_json;
emotion_obj.push_back(json_spirit::Pair("Dominant emotion", "Joy"));
ofstream os("emotion_json.json");
json_spirit::write(emotion_obj, os);
os.close();

我不断收到错误:

undefined reference to 'json_spirit::write(json_spirit::Value_impl<json_spirit::Config_vector<std::string> > const&, std::ostream&, int, unsigned int)'

我尝试了不同的变体,使用 JSON 精神将 JSON 输出到文件,但尽管有标题,但它们似乎都不适合我:

#include <json_spirit.h>
#include <json_spirit_writer_template.h>
#include <json_spirit_writer.h>

知道会发生什么吗?另外,如果有一个更好的、轻量级的库来C++中创建 JSON 结构,我全神贯注。谢谢!

打开链接选项:

-ljson_spirit

如果编译器找不到json_spirit,请使用

-L /path/to/the/parent/folder/of/libjson_spirit.a 

json_spirit之前和之后.cpp文件名。

如果找不到任何libjson_spirit.a,则应构建库。

转到源代码中json_spirit的文件夹,您可以在其中看到文件CMakeLists.txt

在命令行类型中:

cmake .
make

然后libjson_spirit.a将被创建。