![]()  | 
  
Chilkat  HOME  Android™  AutoIt  C  C#  C++  Chilkat2-Python  CkPython  Classic ASP  DataFlex  Delphi DLL  Go  Java  Node.js  Objective-C  PHP Extension  Perl  PowerBuilder  PowerShell  PureBasic  Ruby  SQL Server  Swift  Tcl  Unicode C  Unicode C++  VB.NET  VBScript  Visual Basic 6.0  Visual FoxPro  Xojo Plugin
 
      (C++) Demonstrates how to Handle Large Integers in JSONSee more JSON ExamplesDemonstrates how to handle large integers in JSON. (Integers larger than what can fit in a 32-bit signed integer.)
 #include <CkJsonObject.h> void ChilkatSample(void) { // Let's say your JSON has this: // { // "id": 20000000001234567 // } CkJsonObject json; bool success = json.LoadFile("qa_data/json/large_int.json"); if (success == false) { std::cout << json.lastErrorText() << "\r\n"; return; } // The integer is too large for a 32-bit signed integer that is returned by IntOf. // The result will be something that wrapped around and could be negative. // In this case it would be: -543893881 int id = json.IntOf("id"); std::cout << "id: " << id << "\r\n"; // The solution is to read the integer value as a string, and then use the features in your programming language // to convert from a string to a 64-bit integer. // // Alternatively, you may wish to simply hold the value as a string. If, for example, the integer simply references // an order ID, an account ID, etc., then there's no need to convert to an integer value. You're not going to be doing // mathematical operations on it anyway. This is usually the case for large integers -- they typically exist // in JSON as an account ID. // You can get any JSON value as a string: const char *accountId = json.stringOf("id"); std::cout << "accountId: " << accountId << "\r\n"; // Sample output: // id: -543893881 // accountId: 20000000001234567 }  | 
  ||||||
© 2000-2025 Chilkat Software, Inc. All Rights Reserved.