{"id":22239,"date":"2024-03-15T23:14:37","date_gmt":"2024-03-15T23:14:37","guid":{"rendered":"https:\/\/www.silicloud.com\/blog\/how-to-create-json-objects-in-c\/"},"modified":"2024-03-21T22:24:16","modified_gmt":"2024-03-21T22:24:16","slug":"how-to-create-json-objects-in-c","status":"publish","type":"post","link":"https:\/\/www.silicloud.com\/blog\/how-to-create-json-objects-in-c\/","title":{"rendered":"How to create JSON objects in C++"},"content":{"rendered":"<p>In C++, third-party libraries can be used to create and manipulate JSON objects. Below is an example of creating a JSON object using the RapidJSON library.<\/p>\n<pre class=\"post-pre\"><code><span class=\"hljs-meta\">#<span class=\"hljs-keyword\">include<\/span> <span class=\"hljs-string\">&lt;iostream&gt;<\/span><\/span>\r\n<span class=\"hljs-meta\">#<span class=\"hljs-keyword\">include<\/span> <span class=\"hljs-string\">\"rapidjson\/document.h\"<\/span><\/span>\r\n<span class=\"hljs-meta\">#<span class=\"hljs-keyword\">include<\/span> <span class=\"hljs-string\">\"rapidjson\/writer.h\"<\/span><\/span>\r\n<span class=\"hljs-meta\">#<span class=\"hljs-keyword\">include<\/span> <span class=\"hljs-string\">\"rapidjson\/stringbuffer.h\"<\/span><\/span>\r\n\r\n<span class=\"hljs-keyword\">using<\/span> <span class=\"hljs-keyword\">namespace<\/span> rapidjson;\r\n\r\n<span class=\"hljs-function\"><span class=\"hljs-type\">int<\/span> <span class=\"hljs-title\">main<\/span><span class=\"hljs-params\">()<\/span> <\/span>{\r\n    <span class=\"hljs-comment\">\/\/ \u521b\u5efa\u4e00\u4e2a\u7a7a\u7684 JSON \u5bf9\u8c61<\/span>\r\n    Document document;\r\n    document.<span class=\"hljs-built_in\">SetObject<\/span>();\r\n\r\n    <span class=\"hljs-comment\">\/\/ \u5411 JSON \u5bf9\u8c61\u4e2d\u6dfb\u52a0\u952e\u503c\u5bf9<\/span>\r\n    Value name;\r\n    name.<span class=\"hljs-built_in\">SetString<\/span>(<span class=\"hljs-string\">\"John\"<\/span>, document.<span class=\"hljs-built_in\">GetAllocator<\/span>());\r\n    document.<span class=\"hljs-built_in\">AddMember<\/span>(<span class=\"hljs-string\">\"name\"<\/span>, name, document.<span class=\"hljs-built_in\">GetAllocator<\/span>());\r\n\r\n    Value age;\r\n    age.<span class=\"hljs-built_in\">SetInt<\/span>(<span class=\"hljs-number\">30<\/span>);\r\n    document.<span class=\"hljs-built_in\">AddMember<\/span>(<span class=\"hljs-string\">\"age\"<\/span>, age, document.<span class=\"hljs-built_in\">GetAllocator<\/span>());\r\n\r\n    <span class=\"hljs-comment\">\/\/ \u5c06 JSON \u5bf9\u8c61\u8f6c\u6362\u4e3a\u5b57\u7b26\u4e32<\/span>\r\n    StringBuffer buffer;\r\n    <span class=\"hljs-function\">Writer&lt;StringBuffer&gt; <span class=\"hljs-title\">writer<\/span><span class=\"hljs-params\">(buffer)<\/span><\/span>;\r\n    document.<span class=\"hljs-built_in\">Accept<\/span>(writer);\r\n\r\n    <span class=\"hljs-comment\">\/\/ \u8f93\u51fa JSON \u5b57\u7b26\u4e32<\/span>\r\n    std::cout &lt;&lt; buffer.<span class=\"hljs-built_in\">GetString<\/span>() &lt;&lt; std::endl;\r\n\r\n    <span class=\"hljs-keyword\">return<\/span> <span class=\"hljs-number\">0<\/span>;\r\n}\r\n<\/code><\/pre>\n<p>The above code utilizes the RapidJSON library. Firstly, we create an empty JSON object named document, and then use the SetObject() method to set it as an empty JSON object.<\/p>\n<p>Next, we created two key-value pairs, one with the key &#8220;name&#8221; and the value &#8220;John&#8221; as a string, and the other with the key &#8220;age&#8221; and the value 30 as an integer. We added these key-value pairs to the JSON object using the AddMember() method.<\/p>\n<p>Finally, we convert the JSON object to a string. We utilize a StringBuffer to store the converted string and use a Writer to convert the JSON object to a string. Lastly, we retrieve the string using the GetString() method and output it using std::cout.<\/p>\n<p>The output result is:<\/p>\n<pre class=\"post-pre\"><code>{\"name\":\"John\",\"age\":30}\r\n<\/code><\/pre>\n<p>RapidJSON is an efficient library for parsing and generating JSON that makes it easy to create and manipulate JSON objects. Additionally, there are other JSON libraries available for selection, such as nlohmann\/json and jsoncpp.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>In C++, third-party libraries can be used to create and manipulate JSON objects. Below is an example of creating a JSON object using the RapidJSON library. #include &lt;iostream&gt; #include &#8220;rapidjson\/document.h&#8221; #include &#8220;rapidjson\/writer.h&#8221; #include &#8220;rapidjson\/stringbuffer.h&#8221; using namespace rapidjson; int main() { \/\/ \u521b\u5efa\u4e00\u4e2a\u7a7a\u7684 JSON \u5bf9\u8c61 Document document; document.SetObject(); \/\/ \u5411 JSON \u5bf9\u8c61\u4e2d\u6dfb\u52a0\u952e\u503c\u5bf9 Value name; name.SetString(&#8220;John&#8221;, document.GetAllocator()); [&hellip;]<\/p>\n","protected":false},"author":9,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_import_markdown_pro_load_document_selector":0,"_import_markdown_pro_submit_text_textarea":"","footnotes":""},"categories":[1],"tags":[],"class_list":["post-22239","post","type-post","status-publish","format-standard","hentry","category-uncategorized"],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v21.5 (Yoast SEO v21.5) - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>How to create JSON objects in C++ - Blog - Silicon Cloud<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.silicloud.com\/blog\/how-to-create-json-objects-in-c\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"How to create JSON objects in C++\" \/>\n<meta property=\"og:description\" content=\"In C++, third-party libraries can be used to create and manipulate JSON objects. Below is an example of creating a JSON object using the RapidJSON library. #include &lt;iostream&gt; #include &quot;rapidjson\/document.h&quot; #include &quot;rapidjson\/writer.h&quot; #include &quot;rapidjson\/stringbuffer.h&quot; using namespace rapidjson; int main() { \/\/ \u521b\u5efa\u4e00\u4e2a\u7a7a\u7684 JSON \u5bf9\u8c61 Document document; document.SetObject(); \/\/ \u5411 JSON \u5bf9\u8c61\u4e2d\u6dfb\u52a0\u952e\u503c\u5bf9 Value name; name.SetString(&quot;John&quot;, document.GetAllocator()); [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.silicloud.com\/blog\/how-to-create-json-objects-in-c\/\" \/>\n<meta property=\"og:site_name\" content=\"Blog - Silicon Cloud\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/SiliCloudGlobal\/\" \/>\n<meta property=\"article:published_time\" content=\"2024-03-15T23:14:37+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2024-03-21T22:24:16+00:00\" \/>\n<meta name=\"author\" content=\"Ava Mitchell\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@SiliCloudGlobal\" \/>\n<meta name=\"twitter:site\" content=\"@SiliCloudGlobal\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Ava Mitchell\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"1 minute\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/how-to-create-json-objects-in-c\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.silicloud.com\/blog\/how-to-create-json-objects-in-c\/\"},\"author\":{\"name\":\"Ava Mitchell\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/#\/schema\/person\/a3e2658c2cb9fb2be95ae0a8861f4a64\"},\"headline\":\"How to create JSON objects in C++\",\"datePublished\":\"2024-03-15T23:14:37+00:00\",\"dateModified\":\"2024-03-21T22:24:16+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.silicloud.com\/blog\/how-to-create-json-objects-in-c\/\"},\"wordCount\":191,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/www.silicloud.com\/blog\/#organization\"},\"inLanguage\":\"en-US\"},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/how-to-create-json-objects-in-c\/\",\"url\":\"https:\/\/www.silicloud.com\/blog\/how-to-create-json-objects-in-c\/\",\"name\":\"How to create JSON objects in C++ - Blog - Silicon Cloud\",\"isPartOf\":{\"@id\":\"https:\/\/www.silicloud.com\/blog\/#website\"},\"datePublished\":\"2024-03-15T23:14:37+00:00\",\"dateModified\":\"2024-03-21T22:24:16+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/www.silicloud.com\/blog\/how-to-create-json-objects-in-c\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.silicloud.com\/blog\/how-to-create-json-objects-in-c\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/how-to-create-json-objects-in-c\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.silicloud.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"How to create JSON objects in C++\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/#website\",\"url\":\"https:\/\/www.silicloud.com\/blog\/\",\"name\":\"Silicon Cloud Blog\",\"description\":\"\",\"publisher\":{\"@id\":\"https:\/\/www.silicloud.com\/blog\/#organization\"},\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/#organization\",\"name\":\"Silicon Cloud Blog\",\"url\":\"https:\/\/www.silicloud.com\/blog\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/www.silicloud.com\/blog\/wp-content\/uploads\/2023\/11\/EN-SILICON-Full.png\",\"contentUrl\":\"https:\/\/www.silicloud.com\/blog\/wp-content\/uploads\/2023\/11\/EN-SILICON-Full.png\",\"width\":1024,\"height\":1024,\"caption\":\"Silicon Cloud Blog\"},\"image\":{\"@id\":\"https:\/\/www.silicloud.com\/blog\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/www.facebook.com\/SiliCloudGlobal\/\",\"https:\/\/twitter.com\/SiliCloudGlobal\"]},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/#\/schema\/person\/a3e2658c2cb9fb2be95ae0a8861f4a64\",\"name\":\"Ava Mitchell\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/15c63cd0564b4a2e07d611bcdffa296f6ea80e8db07c3091f43a84010514899d?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/15c63cd0564b4a2e07d611bcdffa296f6ea80e8db07c3091f43a84010514899d?s=96&d=mm&r=g\",\"caption\":\"Ava Mitchell\"},\"url\":\"https:\/\/www.silicloud.com\/blog\/author\/avamitchell\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"How to create JSON objects in C++ - Blog - Silicon Cloud","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.silicloud.com\/blog\/how-to-create-json-objects-in-c\/","og_locale":"en_US","og_type":"article","og_title":"How to create JSON objects in C++","og_description":"In C++, third-party libraries can be used to create and manipulate JSON objects. Below is an example of creating a JSON object using the RapidJSON library. #include &lt;iostream&gt; #include \"rapidjson\/document.h\" #include \"rapidjson\/writer.h\" #include \"rapidjson\/stringbuffer.h\" using namespace rapidjson; int main() { \/\/ \u521b\u5efa\u4e00\u4e2a\u7a7a\u7684 JSON \u5bf9\u8c61 Document document; document.SetObject(); \/\/ \u5411 JSON \u5bf9\u8c61\u4e2d\u6dfb\u52a0\u952e\u503c\u5bf9 Value name; name.SetString(\"John\", document.GetAllocator()); [&hellip;]","og_url":"https:\/\/www.silicloud.com\/blog\/how-to-create-json-objects-in-c\/","og_site_name":"Blog - Silicon Cloud","article_publisher":"https:\/\/www.facebook.com\/SiliCloudGlobal\/","article_published_time":"2024-03-15T23:14:37+00:00","article_modified_time":"2024-03-21T22:24:16+00:00","author":"Ava Mitchell","twitter_card":"summary_large_image","twitter_creator":"@SiliCloudGlobal","twitter_site":"@SiliCloudGlobal","twitter_misc":{"Written by":"Ava Mitchell","Est. reading time":"1 minute"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.silicloud.com\/blog\/how-to-create-json-objects-in-c\/#article","isPartOf":{"@id":"https:\/\/www.silicloud.com\/blog\/how-to-create-json-objects-in-c\/"},"author":{"name":"Ava Mitchell","@id":"https:\/\/www.silicloud.com\/blog\/#\/schema\/person\/a3e2658c2cb9fb2be95ae0a8861f4a64"},"headline":"How to create JSON objects in C++","datePublished":"2024-03-15T23:14:37+00:00","dateModified":"2024-03-21T22:24:16+00:00","mainEntityOfPage":{"@id":"https:\/\/www.silicloud.com\/blog\/how-to-create-json-objects-in-c\/"},"wordCount":191,"commentCount":0,"publisher":{"@id":"https:\/\/www.silicloud.com\/blog\/#organization"},"inLanguage":"en-US"},{"@type":"WebPage","@id":"https:\/\/www.silicloud.com\/blog\/how-to-create-json-objects-in-c\/","url":"https:\/\/www.silicloud.com\/blog\/how-to-create-json-objects-in-c\/","name":"How to create JSON objects in C++ - Blog - Silicon Cloud","isPartOf":{"@id":"https:\/\/www.silicloud.com\/blog\/#website"},"datePublished":"2024-03-15T23:14:37+00:00","dateModified":"2024-03-21T22:24:16+00:00","breadcrumb":{"@id":"https:\/\/www.silicloud.com\/blog\/how-to-create-json-objects-in-c\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.silicloud.com\/blog\/how-to-create-json-objects-in-c\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/www.silicloud.com\/blog\/how-to-create-json-objects-in-c\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.silicloud.com\/blog\/"},{"@type":"ListItem","position":2,"name":"How to create JSON objects in C++"}]},{"@type":"WebSite","@id":"https:\/\/www.silicloud.com\/blog\/#website","url":"https:\/\/www.silicloud.com\/blog\/","name":"Silicon Cloud Blog","description":"","publisher":{"@id":"https:\/\/www.silicloud.com\/blog\/#organization"},"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/www.silicloud.com\/blog\/#organization","name":"Silicon Cloud Blog","url":"https:\/\/www.silicloud.com\/blog\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.silicloud.com\/blog\/#\/schema\/logo\/image\/","url":"https:\/\/www.silicloud.com\/blog\/wp-content\/uploads\/2023\/11\/EN-SILICON-Full.png","contentUrl":"https:\/\/www.silicloud.com\/blog\/wp-content\/uploads\/2023\/11\/EN-SILICON-Full.png","width":1024,"height":1024,"caption":"Silicon Cloud Blog"},"image":{"@id":"https:\/\/www.silicloud.com\/blog\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/SiliCloudGlobal\/","https:\/\/twitter.com\/SiliCloudGlobal"]},{"@type":"Person","@id":"https:\/\/www.silicloud.com\/blog\/#\/schema\/person\/a3e2658c2cb9fb2be95ae0a8861f4a64","name":"Ava Mitchell","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.silicloud.com\/blog\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/15c63cd0564b4a2e07d611bcdffa296f6ea80e8db07c3091f43a84010514899d?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/15c63cd0564b4a2e07d611bcdffa296f6ea80e8db07c3091f43a84010514899d?s=96&d=mm&r=g","caption":"Ava Mitchell"},"url":"https:\/\/www.silicloud.com\/blog\/author\/avamitchell\/"}]}},"_links":{"self":[{"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/posts\/22239","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/users\/9"}],"replies":[{"embeddable":true,"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/comments?post=22239"}],"version-history":[{"count":1,"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/posts\/22239\/revisions"}],"predecessor-version":[{"id":56150,"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/posts\/22239\/revisions\/56150"}],"wp:attachment":[{"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/media?parent=22239"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/categories?post=22239"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/tags?post=22239"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}