Чтение файла unicode в c

Я просто хочу прочитать текстовый файл в формате unicode в обычном c. Следующий код не работает для того же самого,

#include int main() { FILE *ptr_file; char buf[1000]; ptr_file =fopen("input.txt","r"); if (!ptr_file) return 1; while (fgets(buf,1000, ptr_file)!=NULL) printf("%s",buf); fclose(ptr_file); return 0; } 

Попробуй это:

 #include  #include  #include  int main() { FILE *input; wchar_t buf[1000]; setlocale(LC_CTYPE,"it_IT.UTF-8"); // put your locale here if ((input = fopen("input.txt","r")) == NULL) return 1; while (fgetws(buf,1000,input)!=NULL) wprintf(L"%s",buf); fclose(input); }