THIS PROJECT HAS MOVED TO GITHUB.

jsoncpp is an implementation of a JSON (http://json.org) reader and writer in C++. JSON (JavaScript Object Notation) is a lightweight data-interchange format. It is easy for humans to read and write. It is easy for machines to parse and generate.

New homepage:
https://github.com/open-source-parsers/jsoncpp
Old homepage:
http://jsoncpp.sourceforge.net

Project Activity

See All Activity >

Categories

Data Formats

License

MIT License, Public Domain

Follow json-cpp

json-cpp Web Site

Other Useful Business Software
Endpoint Management with Remote Control Built In Icon
Endpoint Management with Remote Control Built In

Patch, monitor, and connect to Windows and macOS devices from one console

Splashtop AEM handles patching, alerts, scripts, and inventory, and unattended remote control is included. When something needs hands-on work, you’re one click away instead of switching tools.
Start Free Trial
Rate This Project
Login To Rate This Project

User Ratings

★★★★★
★★★★
★★★
★★
★
43
1
2
0
7
ease 1 of 5 2 of 5 3 of 5 4 of 5 5 of 5 3 / 5
features 1 of 5 2 of 5 3 of 5 4 of 5 5 of 5 3 / 5
design 1 of 5 2 of 5 3 of 5 4 of 5 5 of 5 3 / 5
support 1 of 5 2 of 5 3 of 5 4 of 5 5 of 5 2 / 5

User Reviews

  • 5 out of 5 stars
    Robust, small and standard de facto implementation of JSON parser in C++. We use it in educational purposes to study students.
  • 5 out of 5 stars
    We have been using Json-cpp for quite a number of years in our mobile games, where it has provided solid, reliable, cross-platform parsing with a very small footprint.
  • 3 out of 5 stars
    hello author, I find a bug. when i use reader prase a num string,expleme "49", it is crash type_ is int type,but value_.map_ is not createed
  • 5 out of 5 stars
    hello author, I find two bug. 1.if json more than twenty value,Could lead to a loss of "[" and "{". example: Json::Value root; Json::FastWriter writer; while(bContinue) { hModule = CreateToolhelp32Snapshot(TH32CS_SNAPMODULE, PInfo.th32ProcessID); Module32First(hModule, &MInfo); CloseHandle(hModule); hProcess = OpenProcess(PROCESS_QUERY_INFORMATION,FALSE,PInfo.th32ProcessID); char cFull[1024] = {0}; int iLen = pGetProcessImageFileNameA(hProcess,cFull,1024); Json::Value sysinfo; sysinfo["dwPid"] = (int)PInfo.th32ProcessID; sysinfo["FileName"] = PInfo.szExeFile; sysinfo["FilePath"] = DosDevicePath2LogicalPath(cFull); sysinfo["dwThreads"] = (int)PInfo.cntThreads; sysinfo["dwPriClass"] = (int)GetPriorityClass(hProcess); root.append(sysinfo); bContinue = Process32Next(hSnapshot, &PInfo); } jsondata = writer.write(root); FILE *fp; fp = fopen("aa.txt", "w"); if(fp ==NULL) printf("fails\n"); fprintf(fp, jsondata.c_str()); 2.value["key"] funtion lost aslong(),if value is FileSize. If updated, please notice 674268015@qq.com,Thank you very much.
  • 3 out of 5 stars
    hello author, I find a expression that in json_reader.cpp 566 line. like this: bool badTokenType = ( token.type_ == tokenArraySeparator && token.type_ == tokenArrayEnd ); the boolean expression always return false. I think not '&&' but '||', do you thing so ?
Read more reviews >

Additional Project Details

Operating Systems

BSD, Linux, Windows

Intended Audience

Developers

Programming Language

C++

Related Categories

C++ Data Formats Software

Registered

2005-07-23