Delphi DLL
Delphi DLL
Decode 2-digit Hex Escaped
See more HTML-to-XML/Text Examples
Demonstrates how to replace escaped us-ascii chars such as \x7b and \x22 with the chars.Chilkat Delphi DLL Downloads
uses
Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls, StringBuilder;
...
procedure TForm1.Button1Click(Sender: TObject);
var
s: PWideChar;
sb: HCkStringBuilder;
numReplaced: Integer;
begin
// We have the following string with some us-ascii chars escaped like this:
s := '\x7b\x22responseContext\x22:\x7b\x22';
// Note: The above escaping does not conform to any standard format (as far as I know).
// Chilkat does not have anything to decode from the above.
// However, we can 1st transform into a standard format, and then decode..
// JSON escapes chars outside us-ascii like this: "Hello, \ud83d\ude03!"
// We can transform the above to this: "\u007b\u0022responseContext\u0022:\u007b\u0022"
// And then decode..
sb := CkStringBuilder_Create();
CkStringBuilder_Append(sb,s);
numReplaced := CkStringBuilder_Replace(sb,'\\x','\\u00');
// Now decode from "json" escapes
CkStringBuilder_Decode(sb,'json','utf-8');
// Show the decoded string
Memo1.Lines.Add(CkStringBuilder__getAsString(sb));
// Here's the result: {"responseContext":{"
CkStringBuilder_Dispose(sb);
end;