Sample code for 30+ languages & platforms
SQL Server

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 SQL Server Downloads

SQL Server
--
CREATE PROCEDURE ChilkatSample
AS
BEGIN
    DECLARE @hr int
    DECLARE @sTmp0 nvarchar(4000)
    DECLARE @success int
    SELECT @success = 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:

    DECLARE @xml int
    EXEC @hr = sp_OACreate 'Chilkat.Xml', @xml OUT
    IF @hr <> 0
    BEGIN
        PRINT 'Failed to create ActiveX component'
        RETURN
    END

    EXEC sp_OAMethod @xml, 'LoadXmlFile', @success OUT, '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:
    DECLARE @sb int
    EXEC @hr = sp_OACreate 'Chilkat.StringBuilder', @sb OUT

    EXEC sp_OAMethod @sb, 'LoadFile', @success OUT, 'qa_data/xml/sample_ucs2.xml', 'utf-16'
    --  Assuming success...
    EXEC sp_OAMethod @xml, 'LoadSb', @success OUT, @sb, 1

    --  To convert to the XML from utf-16 to utf-8, do the following:
    EXEC sp_OASetProperty @xml, 'Encoding', 'utf-8'
    EXEC sp_OAMethod @xml, 'GetXml', @sTmp0 OUT
    PRINT @sTmp0
    EXEC sp_OAMethod @xml, 'SaveXml', @success OUT, 'qa_output/sample_utf8.xml'

    EXEC @hr = sp_OADestroy @xml
    EXEC @hr = sp_OADestroy @sb


END
GO