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
(DataFlex) Get the text body content of a MIME part.Explains and demonstrates the GetBodyEncoded and GetBodyDecoded methods. This example uses the MIME test data located at http://www.chilkatsoft.com/testData/sampleMime1.txt The sampleMime1.txt contains: Content-Type: multipart/mixed; boundary="------------070404010201060604000708"; This is a multi-part message in MIME format. --------------070404010201060604000708 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8"; Falsches =C3=9Cben von Xylophonmusik qu=C3=A4lt jeden gr=C3=B6=C3=9Feren Zwe= rg. --------------070404010201060604000708 Content-Transfer-Encoding: base64 Content-Type: text/plain; charset="utf-8"; RmFsc2NoZXMgw5xiZW4gdm9uIFh5bG9waG9ubXVzaWsgcXXDpGx0IGplZGVuIGdyw7bDn2VyZW4g Wndlcmcu --------------070404010201060604000708 Content-Transfer-Encoding: 8bit Content-Type: text/plain; charset="iso-8859-1"; Falsches Üben von Xylophonmusik quält jeden größeren Zwerg. --------------070404010201060604000708--
Use ChilkatAx-win32.pkg Procedure Test Handle hoMime Boolean iSuccess Variant vPart1 Handle hoPart1 Variant vPart2 Handle hoPart2 Variant vPart3 Handle hoPart3 String sTemp1 // This example assumes the Chilkat API to have been previously unlocked. // See Global Unlock Sample for sample code. Get Create (RefClass(cComChilkatMime)) To hoMime If (Not(IsComObjectCreated(hoMime))) Begin Send CreateComObject of hoMime End // Load the sampleMime1.txt file into the MIME object. // (This file is available at http://www.chilkatsoft.com/testData/sampleMime1.txt ) Get ComLoadMimeFile Of hoMime "sampleMime1.txt" To iSuccess If (iSuccess = False) Begin Get ComLastErrorText Of hoMime To sTemp1 Showln sTemp1 Procedure_Return End // The sampleMime1.txt is a MIME document with a top-level // multipart/mixed containing 3 sub-parts, each of which has the // same body text but with different content-transfer-encodings and // using different character encodings (utf-8 and iso-8859-1). // Calling mime.GetBodyEncoded or mime.GetBodyDecoded on the // top-level multipart/mixed MIME object will return an empty string. // It is because the "body" of a multipart MIME object is always empty. // A multipart MIME object contains sub-parts (each a MIME object), // and it is only the leaf-objects that can have non-empty bodies. // Get GetBodyDecoded method returns the body text decoded // from whatever the content-transfer-encoding may be, and // converted from whatever charset encoding might be used. // In this case, calling GetBodyDecoded on each of the three // sub-parts will return the same string. // To demonstrate: Get ComGetPart Of hoMime 0 To vPart1 If (IsComObject(vPart1)) Begin Get Create (RefClass(cComChilkatMime)) To hoPart1 Set pvComObject Of hoPart1 To vPart1 End Get ComGetBodyDecoded Of hoPart1 To sTemp1 Showln sTemp1 Get ComGetPart Of hoMime 1 To vPart2 If (IsComObject(vPart2)) Begin Get Create (RefClass(cComChilkatMime)) To hoPart2 Set pvComObject Of hoPart2 To vPart2 End Get ComGetBodyDecoded Of hoPart2 To sTemp1 Showln sTemp1 Get ComGetPart Of hoMime 2 To vPart3 If (IsComObject(vPart3)) Begin Get Create (RefClass(cComChilkatMime)) To hoPart3 Set pvComObject Of hoPart3 To vPart3 End Get ComGetBodyDecoded Of hoPart3 To sTemp1 Showln sTemp1 // The GetBodyEncoded method will NOT decode from // whatever content-transfer-encoding is used. However, it will // convert from whatever internal character encoding // may be used to return a string appropriate for the calling // programming language (for example, in .NET or any language // using ActiveX, all strings are Unicode..) Get ComGetBodyEncoded Of hoPart1 To sTemp1 Showln sTemp1 Get ComGetBodyEncoded Of hoPart2 To sTemp1 Showln sTemp1 Get ComGetBodyEncoded Of hoPart3 To sTemp1 Showln sTemp1 Send Destroy of hoPart1 Send Destroy of hoPart2 Send Destroy of hoPart3 End_Procedure |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.