Sample code for 30+ languages & platforms
DataFlex

Load ucs2 XML File (utf-16)

See more XML Examples

Demonstrates how to load a ucs2 (utf-16 little-endian) XML file into Chilkat XML.

Chilkat DataFlex Downloads

DataFlex
Use ChilkatAx-win32.pkg

Procedure Test
    Boolean iSuccess
    Handle hoXml
    Variant vSb
    Handle hoSb
    String sTemp1

    Move False To iSuccess

    // If the XML file specifies the encoding in the XML declaration, such as:
    // <?xml version = "1.0" encoding = "UTF-16" standalone = "no" ?>
    // Then it's simply a matter of calling LoadXmlFile.
    // Chilkat will automatically read the XML declaration and will
    // process the file correctly.   For example:

    Get Create (RefClass(cComChilkatXml)) To hoXml
    If (Not(IsComObjectCreated(hoXml))) Begin
        Send CreateComObject of hoXml
    End
    Get ComLoadXmlFile Of hoXml "qa_data/xml/sample_ucs2.xml" To iSuccess

    // If, however, there is no XML declaration to indicate the character encoding,
    // then you must explicitly read the file according to what you know
    // is the correct encoding.  For example:
    Get Create (RefClass(cComChilkatStringBuilder)) To hoSb
    If (Not(IsComObjectCreated(hoSb))) Begin
        Send CreateComObject of hoSb
    End
    Get ComLoadFile Of hoSb "qa_data/xml/sample_ucs2.xml" "utf-16" To iSuccess
    // Assuming success...
    Get pvComObject of hoSb to vSb
    Get ComLoadSb Of hoXml vSb True To iSuccess

    // To convert to the XML from utf-16 to utf-8, do the following:
    Set ComEncoding Of hoXml To "utf-8"
    Get ComGetXml Of hoXml To sTemp1
    Showln sTemp1
    Get ComSaveXml Of hoXml "qa_output/sample_utf8.xml" To iSuccess


End_Procedure