Sample code for 30+ languages & platforms
C

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

Convert a text file from one character encoding to another.

Chilkat C Downloads

C
#include <C_CkStringBuilder.h>

void ChilkatSample(void)
    {
    BOOL success;
    HCkStringBuilder sb;

    success = FALSE;

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

    sb = CkStringBuilder_Create();

    //  In this case, my test file has some norwegian chars in the utf-8 encoding
    success = CkStringBuilder_LoadFile(sb,"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..)
    success = CkStringBuilder_WriteFile(sb,"qa_output/norwegian_chars.txt","windows-1252",FALSE);

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


    CkStringBuilder_Dispose(sb);

    }