Sto riscontrando alcuni problemi nella scrittura di un file in unicode nel mio programma c. Sto provando a scrivere una stringa giapponese unicode in un file. Quando vado a controllare il file è vuoto. Se provo una stringa non unicode, funziona perfettamente. Che cosa sto facendo di sbagliato?Scrittura su un file in Unicode
setlocale(LC_CTYPE, "");
FILE* f;
f = _wfopen(COMMON_FILE_PATH,L"w");
fwprintf(f,L"日本語");
fclose(f);
Oh circa il mio sistema: Sono in esecuzione di Windows. E il mio IDE è Visual Studio 2008.
sto postando questo come un commento piuttosto che una risposta, perché non so fagioli su C, ma mi chiedo se il codice sorgente è in UTF-8, e il compilatore pensa che sia ASCII . –
No, non penso sia così. Il compilatore sa che è UTF-8, ne sono sicuro: p – Lefteris
OK. Comunque valeva la pena sparare. :-) –