Sample code for 30+ languages & platforms
SQL Server

Convert a Text File from utf-8 to Windows-1252

Convert a text file from one character encoding to another.

Chilkat SQL Server Downloads

SQL Server
--
CREATE PROCEDURE ChilkatSample
AS
BEGIN
    DECLARE @hr int
    DECLARE @success int
    SELECT @success = 0

    --  It's really simple:  Just load from one charset, save using another.

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

    --  In this case, my test file has some norwegian chars in the utf-8 encoding
    EXEC sp_OAMethod @sb, 'LoadFile', @success OUT, 'qa_data/txt/norwegian_chars.txt', 'utf-8'

    --  We could just as well write over the file we just read in.
    --  (But I don't want to do that for my example..)
    EXEC sp_OAMethod @sb, 'WriteFile', @success OUT, 'qa_output/norwegian_chars.txt', 'windows-1252', 0

    --  Note:  Windows-1252 is a 1-byte per char encoding, which means it's only capable of representing
    --  those chars in Western European languages.   See https://en.wikipedia.org/wiki/Windows-1252
    --  
    --  utf-8 is an encoding that can handle chars in any language, including Chinese, Korean, Japanese, Arabic, Hebrew, Greek, etc.
    --  If a text file contains chars in these other languages, obviously it cannot be converted to windows-1252 because
    --  there are only 256 chars that can possibly be represented in a 1-byte per char encoding.

    EXEC @hr = sp_OADestroy @sb


END
GO