Čtení a zápis do souboru s diakritikou – C / C++ – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

Čtení a zápis do souboru s diakritikou – C / C++ – Fórum – Programujte.comČtení a zápis do souboru s diakritikou – C / C++ – Fórum – Programujte.com

 

vdolek0
Newbie
29. 7. 2009   #1
-
0
-

Zdravím,
potřebuji v c++ načítat a zapisovat do souboru text s českou diakritikou.

	setlocale(LC_ALL,".1250");


std::wofstream file;

file.open("file.txt");

file << L"ahoj";
file << L"ěščřžýáíé";

file.close();

Toto zapíše pouze "ahoj" a tím to končí, podobně je tomu i při čtení (načte paznaky). Jinyk vstup a výstup z konzole (wcin a wcout) funguje.
Předem díky

Nahlásit jako SPAM
IP: 213.168.163.–
ondra.holub+1
Stálý člen
30. 7. 2009   #2
-
0
-

Předpokládám, že se jedná o windows (podle kódové stránky). Je dobré si uvědomit, že konzole nepoužívá kódování Cp1250, al 852 (nebo tak nějak).

Nahlásit jako SPAM
IP: 85.207.23.–
vdolek0
Newbie
31. 7. 2009   #3
-
0
-

Tak jsem zjistil, že stačí použít klasické cout, ifstrem ... (místo wcout, wifstream ...). Ale abych načetl text s diakritikou ze souboru, musím použít Cp1250, ale pokud chci vstup z konzole, tak 852.

Nahlásit jako SPAM
IP: 213.168.163.–
KIIV
~ Moderátor
+43
God of flame
31. 7. 2009   #4
-
0
-

To vdolek : me se povedlo prenastavit pomoci winapi a jineho fontu program na cp1250...
je teda v C ale funguje...

#include <stdio.h>

#include <stdlib.h>
#include <windows.h>

int main(int argc, char *argv[])
{
int test;
SetConsoleCP(1250);
SetConsoleOutputCP(1250);

FILE * f = fopen("test.txt","w");

printf("%d %d ěščřžýžýáííéééůú\n", GetConsoleCP(),GetConsoleOutputCP());

while ( ((test = getc(stdin)) != EOF )) {
fprintf(f,"%c", test);
}
fclose(f);
return 0;
}



a aby se diakritika i dobre zobrazovala tak musi byt pismo lucida

Nahlásit jako SPAM
IP: 80.188.94.–
Program vždy dělá to co naprogramujete, ne to co chcete...
Zjistit počet nových příspěvků

Přidej příspěvek

Toto téma je starší jak čtvrt roku – přidej svůj příspěvek jen tehdy, máš-li k tématu opravdu co říct!

Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku

×Vložení zdrojáku

×Vložení obrázku

Vložit URL obrázku Vybrat obrázek na disku
Vlož URL adresu obrázku:
Klikni a vyber obrázek z počítače:

×Vložení videa

Aktuálně jsou podporována videa ze serverů YouTube, Vimeo a Dailymotion.
×
 
Podporujeme Gravatara.
Zadej URL adresu Avatara (40 x 40 px) nebo emailovou adresu pro použití Gravatara.
Email nikam neukládáme, po získání Gravatara je zahozen.
-
Pravidla pro psaní příspěvků, používej diakritiku. ENTER pro nový odstavec, SHIFT + ENTER pro nový řádek.
Sledovat nové příspěvky (pouze pro přihlášené)
Sleduj vlákno a v případě přidání nového příspěvku o tom budeš vědět mezi prvními.
Reaguješ na příspěvek:

Uživatelé prohlížející si toto vlákno

Uživatelé on-line: 0 registrovaných, 9 hostů

Podobná vlákna

Zapis do souboru s diakritikou — založil TomášJančík

čtení a zápis do souboru 3.2 — založil dragon124

čtení a zápis souboru — založil _Radek_

Moderátoři diskuze

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032024 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý