Как читать / писать текстовые файлы 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;
}
Это работает для английских символов на данный момент.