在C语言中,将文件写成JSON格式可以使用json-c库。该库允许将C数据结构转换为JSON格式,并将其保存到文件中。以下是一个简单的示例程序:
#include#include int main() { struct json_object *person, *name, *age; person = json_object_new_object(); name = json_object_new_string("John Doe"); age = json_object_new_int(30); json_object_object_add(person, "name", name); json_object_object_add(person, "age", age); FILE *outfile = fopen("person.json", "w+"); fprintf(outfile, "%s", json_object_to_json_string_ext(person, JSON_C_TO_STRING_SPACED | JSON_C_TO_STRING_PRETTY)); fclose(outfile); return 0; }
首先,我们需要创建json-c库的json对象来表示一个人的细节。然后,我们将名称和年龄添加到该对象中。接下来,我们使用fopen函数打开一个名为“person.json”的文件,使用fprintf将对象转换为json字符串,并将其写入文件中。最后,我们使用fclose函数关闭文件。
要编译此程序需要在命令行中执行以下命令:
gcc -o json_write json_write.c -ljson-c
json-c库会在编译期间自动链接。一旦编译完成,你可以运行该程序,它将在当前目录下创建一个名为“person.json”的文件,其中包含以下内容:
{ "name": "John Doe", "age": 30 }
如此简单,我们就将一个C数据结构转换为JSON格式,并将其写入文件中。现在你可以将该文件传递给其他语言或库,以便它们可以使用JSON数据。