1
我學習C語言。我需要用Unicode數據創建一些文本文件。我已經寫了這樣的代碼:文本文件中的本地化字符無效
#include<stdio.h>
#include<stdlib.h>
#include<wchar.h>
int main(int argc, char *argv[]) {
wchar_t *s1 = L"Привет, мир!\n";
wchar_t *s2 = L"Hello, World!";
FILE *fp = fopen("./hello.txt", "w");
fputws(s1, fp);
fputws(s2, fp);
fclose(fp);
exit(EXIT_SUCCESS);
}
,但我得到這樣的結果:
??????, ???!
Hello, World!
爲什麼我沒有得到俄羅斯字符?
請解釋你如何查看我的gedit(Linux)的打開文件 – 2013-02-21 19:14:37
。 – 2013-02-21 19:19:46
gedit認爲該文件是什麼編碼?它是否與實際編碼匹配?如果你使用的是Linux,那麼我懷疑UTF-8將是首選的編碼方式。 – 2013-02-21 19:20:50