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
(Delphi DLL) 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.
uses Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics, Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls, JsonObject, StringBuilder; ... procedure TForm1.Button1Click(Sender: TObject); var s: PWideChar; json: HCkJsonObject; success: Boolean; sb: HCkStringBuilder; begin s := '{ "example": "\\u05d1\\u05d3\\u05d9\\u05e7" }'; json := CkJsonObject_Create(); success := CkJsonObject_Load(json,s); // When getting the member data, it is automatically decoded. Memo1.Lines.Add('member data: ' + CkJsonObject__stringOf(json,'example')); // Output: // member data: בדיק // When getting the full JSON, it remains encoded. This is expected and intentional. Memo1.Lines.Add('full JSON: ' + CkJsonObject__emit(json)); // Output: // full JSON: {"example":"\u05d1\u05d3\u05d9\u05e7"} // To get the full JSON without the encoding, you can decode manually. sb := CkStringBuilder_Create(); CkJsonObject_EmitSb(json,sb); // The hex encoding used by JSON is utf-8. CkStringBuilder_Decode(sb,'json','utf-8'); Memo1.Lines.Add(CkStringBuilder__getAsString(sb)); // Output: // {"example":"בדיק"} CkJsonObject_Dispose(json); CkStringBuilder_Dispose(sb); end; |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.