Как читать / писать текстовые файлы UTF8 в C?

я пытаюсь прочитать текст UTF8 из текстового файла, а затем распечатать его в другой файл. Я использую Linux и компилятор gcc. Это код, который я использую:

#include <stdio.h>
#include <stdlib.h>

int main(){
    FILE *fin;
    FILE *fout;
    int character;
    fin=fopen("in.txt", "r");
    fout=fopen("out.txt","w");
    while((character=fgetc(fin))!=EOF){
        putchar(character); // It displays the right character (UTF8) in the terminal
        fprintf(fout,"%c ",character); // It displays weird characters in the file
    }
    fclose(fin);
    fclose(fout);
    printf("\nFile has been created...\n");
    return 0;
}

Это работает для английских символов на данный момент.

Ответы на вопрос(4)

Ваш ответ на вопрос