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) MIME Header Q and B Encoding and DecodingDemonstrates how to Q and B encode/decode.
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 sb: HCkStringBuilder; success: Boolean; sb2: HCkStringBuilder; begin sb := CkStringBuilder_Create(); CkStringBuilder_Append(sb,'This is a test'); Memo1.Lines.Add(CkStringBuilder__getEncoded(sb,'B','utf-8')); // output is: // =?utf-8?B?VGhpcyBpcyBhIHRlc3Q=?= Memo1.Lines.Add(CkStringBuilder__getEncoded(sb,'Q','iso-8859-1')); // output is: // =?utf-8?Q?This_is_a_test?= sb2 := CkStringBuilder_Create(); CkStringBuilder_Append(sb2,'=?utf-8?B?VGhpcyBpcyBhIHRlc3Q=?='); CkStringBuilder_Decode(sb2,'B','utf-8'); Memo1.Lines.Add(CkStringBuilder__getAsString(sb2)); // output is: // This is a test CkStringBuilder_Clear(sb2); CkStringBuilder_Append(sb2,'=?utf-8?Q?This_is_a_test?='); CkStringBuilder_Decode(sb2,'Q','utf-8'); Memo1.Lines.Add(CkStringBuilder__getAsString(sb2)); // output is: // This is a test // "B" or "Q" will decode both B and Q. CkStringBuilder_Clear(sb2); CkStringBuilder_Append(sb2,'=?utf-8?Q?This_is_a_test?= 123 =?utf-8?B?VGhpcyBpcyBhIHRlc3Q=?='); CkStringBuilder_Decode(sb2,'Q','utf-8'); Memo1.Lines.Add(CkStringBuilder__getAsString(sb2)); // output is: // This is a test 123 This is a test CkStringBuilder_Dispose(sb); CkStringBuilder_Dispose(sb2); end; |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.