Permalänk
Medlem

Å, Ä, Ö i utFil?

Hej!

Sitter och kodar ett program i C++ som låter användaren mata in glosor, som sedan kommer sparas i en .txt fil på C:\\. Nu undrar jag dock hur man får ut Å, Ä och Ö i själva .txt filen. För om jag skriver t.ex. "Datorskärm" så kommer det att stå "Datorsk,,rm" i filen. Jag har med

setlocale (LC_ALL, "");

men det fungerar endast för cout, inte utFil.
Hoppas ni förstår!

Oehört tacksam för hjälp!

Visa signatur

OS: Windows 10 MB: Asus Z170-P CPU: Intel i5 6600K @ 4GHz Kylning: Noctua NH-U9B SE2 RAM: 16GB Corsair Vengeance LPX @ 2133MHz GPU: Asus Geforce GTX 970 Strix Chassi: Fractal Design Define S PSU: Corsair RM750X Lagring: Samsung 850 250GB SSD, Samsung Spinpoint F3 1TB Skärm: BenQ Xl2411T 144Hz

Permalänk
Medlem

Nu hr jag inte någon koll på c++ men är det inte så att andra parametern på setlocale() bör definera vilken "locale" man ska använda? Exempel från php:

setlocale(LC_ALL, "sv_SE");

LC_ALL är ju då vilka typer du vill ska påverkas av locale, i php kan det vara namn på månader och veckodagar till exempel.

sv_SE är då ett förinstallerat pack på din server, i php finns dessa:

http://www.w3.org/WAI/ER/IG/ert/iso639.htm

Hoppas det är till ngn nytta!

Edit: vid närmare eftertanke borde det snarare vara någon char-encoding som påverkar detta snarare än locale??

Skickades från m.sweclockers.com

Permalänk
Medlem
Skrivet av simowewe:

Nu hr jag inte någon koll på c++ men är det inte så att andra parametern på setlocale() bör definera vilken "locale" man ska använda? Exempel från php:

setlocale(LC_ALL, "sv_SE");

LC_ALL är ju då vilka typer du vill ska påverkas av locale, i php kan det vara namn på månader och veckodagar till exempel.

sv_SE är då ett förinstallerat pack på din server, i php finns dessa:

http://www.w3.org/WAI/ER/IG/ert/iso639.htm

Hoppas det är till ngn nytta!

Edit: vid närmare eftertanke borde det snarare vara någon char-encoding som påverkar detta snarare än locale??

Skickades från m.sweclockers.com

Testade att lägga in "sv_SE" vilket gjorde att tecknen i cmd blev fel :s

Visa signatur

OS: Windows 10 MB: Asus Z170-P CPU: Intel i5 6600K @ 4GHz Kylning: Noctua NH-U9B SE2 RAM: 16GB Corsair Vengeance LPX @ 2133MHz GPU: Asus Geforce GTX 970 Strix Chassi: Fractal Design Define S PSU: Corsair RM750X Lagring: Samsung 850 250GB SSD, Samsung Spinpoint F3 1TB Skärm: BenQ Xl2411T 144Hz

Permalänk
Medlem
Skrivet av kuggarn:

Testade att lägga in "sv_SE" vilket gjorde att tecknen i cmd blev fel :s

När jag läser lite om c++ så verkar det ju som att du gjort rätt ang. locale iaf!

Men som jag skrev i min edit, det borde ju snarare vara något typ av character-encoding som du ska definera.

Hittade denna: http://stackoverflow.com/questions/4018384/stl-and-utf-8-file...