Sample code for 30+ languages & platforms
DataFlex

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

Convert a text file from one character encoding to another.

Chilkat DataFlex Downloads

DataFlex
Use ChilkatAx-win32.pkg

Procedure Test
    Boolean iSuccess
    Handle hoSb

    Move False To iSuccess

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

    Get Create (RefClass(cComChilkatStringBuilder)) To hoSb
    If (Not(IsComObjectCreated(hoSb))) Begin
        Send CreateComObject of hoSb
    End

    // In this case, my test file has some norwegian chars in the utf-8 encoding
    Get ComLoadFile Of hoSb "qa_data/txt/norwegian_chars.txt" "utf-8" To iSuccess

    // We could just as well write over the file we just read in.
    // (But I don't want to do that for my example..)
    Get ComWriteFile Of hoSb "qa_output/norwegian_chars.txt" "windows-1252" False To iSuccess

    // 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.


End_Procedure