PureBasic
PureBasic
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 PureBasic Downloads
IncludeFile "CkStringBuilder.pb"
IncludeFile "CkXml.pb"
Procedure ChilkatExample()
success.i = 0
; 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:
xml.i = CkXml::ckCreate()
If xml.i = 0
Debug "Failed to create object."
ProcedureReturn
EndIf
success = CkXml::ckLoadXmlFile(xml,"qa_data/xml/sample_ucs2.xml")
; 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:
sb.i = CkStringBuilder::ckCreate()
If sb.i = 0
Debug "Failed to create object."
ProcedureReturn
EndIf
success = CkStringBuilder::ckLoadFile(sb,"qa_data/xml/sample_ucs2.xml","utf-16")
; Assuming success...
success = CkXml::ckLoadSb(xml,sb,1)
; To convert to the XML from utf-16 to utf-8, do the following:
CkXml::setCkEncoding(xml, "utf-8")
Debug CkXml::ckGetXml(xml)
success = CkXml::ckSaveXml(xml,"qa_output/sample_utf8.xml")
CkXml::ckDispose(xml)
CkStringBuilder::ckDispose(sb)
ProcedureReturn
EndProcedure