Portál AbcLinuxu, 24. dubna 2024 01:26


Dotaz: Jazyk C: interní reprezentace znaků pomocí wchar_t versus čtení/zápis souborů

31.10.2015 12:17 Vašek
Jazyk C: interní reprezentace znaků pomocí wchar_t versus čtení/zápis souborů
Přečteno: 454×
Odpovědět | Admin

Dobrý den,

mám spíš teoretický dotaz. Pokud budu interně (v rámci GNU C Library) používat datový typ wchar_t pro práci se znaky/řetězci, tzn. budu znaky/řetězce prefixovat pomocí L, tak funkce typu fwprintf budou v mém případě, kdy $LANG=cs_CZ.UTF-8, zapisovat do souboru v kódování UTF-8? Jinak se jedná o Arch Linux.

Předem díky za reakce.


Řešení dotazu:


Nástroje: Začni sledovat (0) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

1.11.2015 00:20 rastos | skóre: 62 | blog: rastos
Rozbalit Rozbalit vše Re: Jazyk C: interní reprezentace znaků pomocí wchar_t versus čtení/zápis souborů
Odpovědět | | Sbalit | Link | Blokovat | Admin
Sám som nevedel, tak som skúšal. A vyzerá to, že skutočne je to tak. Použil som nasledovné volania:
wchar_t buf[100];
...
setlocale(LC_ALL,""); // set locale based on environment variables
f=fopen("foo.dat","wt"); // open the output in text mode 
fwide(f,1); // set orientation of the output file handle to "wide char". this seems to be optional
fwprintf(f,L"%ls",buf); // use modifier l in the format string
Pozor na to, že už raz nastavenú orientáciu nemožno zmeniť.
1.11.2015 07:04 Vašek
Rozbalit Rozbalit vše Re: Jazyk C: interní reprezentace znaků pomocí wchar_t versus čtení/zápis souborů

Děkuju moc za vyčerpávající odpověď.

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.