0

我正在尝试使用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 Spirit 中尝试了不同的变体来将 JSON 输出到文件中,但是尽管有标题,但它们似乎都不适合我:

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

知道会发生什么吗?此外,如果有更好的、轻量级的库来用 C++ 创建 JSON 结构,我会全力以赴。谢谢!

4

1 回答 1

1

打开链接选项:

-ljson_spirit

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

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

文件名之前json_spirit和之后.cpp

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

转到您json_spirit在源代码中看到 file的文件夹CMakeLists.txt

在命令行类型中:

cmake .
make

然后libjson_spirit.a将被创建。

于 2017-11-16T05:00:50.827 回答