Chilkat HOME .NET Core C# Android™ AutoIt C C# C++ Chilkat2-Python CkPython Classic ASP DataFlex Delphi ActiveX Delphi DLL Go Java Lianja Mono C# Node.js Objective-C PHP ActiveX PHP Extension Perl PowerBuilder PowerShell PureBasic Ruby SQL Server Swift 2 Swift 3,4,5... Tcl Unicode C Unicode C++ VB.NET VBScript Visual Basic 6.0 Visual FoxPro Xojo Plugin
(PureBasic) JSON Hex EncodingSee more JSON ExamplesLet's say your JSON contains content that is hex encoded like this: \u05d1\u05d3\u05d9\u05e7 This example shows how to get the decoded string.
IncludeFile "CkStringBuilder.pb" IncludeFile "CkJsonObject.pb" Procedure ChilkatExample() s.s = "{ " + Chr(34) + "example" + Chr(34) + ": " + Chr(34) + "\u05d1\u05d3\u05d9\u05e7" + Chr(34) + " }" json.i = CkJsonObject::ckCreate() If json.i = 0 Debug "Failed to create object." ProcedureReturn EndIf success.i = CkJsonObject::ckLoad(json,s) ; When getting the member data, it is automatically decoded. Debug "member data: " + CkJsonObject::ckStringOf(json,"example") ; Output: ; member data: בדיק ; When getting the full JSON, it remains encoded. This is expected and intentional. Debug "full JSON: " + CkJsonObject::ckEmit(json) ; Output: ; full JSON: {"example":"\u05d1\u05d3\u05d9\u05e7"} ; To get the full JSON without the encoding, you can decode manually. sb.i = CkStringBuilder::ckCreate() If sb.i = 0 Debug "Failed to create object." ProcedureReturn EndIf CkJsonObject::ckEmitSb(json,sb) ; The hex encoding used by JSON is utf-8. CkStringBuilder::ckDecode(sb,"json","utf-8") Debug CkStringBuilder::ckGetAsString(sb) ; Output: ; {"example":"בדיק"} CkJsonObject::ckDispose(json) CkStringBuilder::ckDispose(sb) ProcedureReturn EndProcedure |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.