Tisk do souboru, datový typ string – C / C++ – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

Tisk do souboru, datový typ string – C / C++ – Fórum – Programujte.comTisk do souboru, datový typ string – C / C++ – Fórum – Programujte.com

 

michi
~ Anonymní uživatel
14 příspěvků
16. 5. 2009   #1
-
0
-

Zdravim. Jsem začátečník v programování v C++ a narazil sem na jeden problem. pouzivam knihovnu string a textove retezce mam typu string, ale nevim jak mam string vepsat do souboru (.txt). Kdyz pouziju Ceckovej prikaz fprintf(f, "%s\n", pom->VratNazev()); , tak se mi do souboru ulozi hodnoty (null). Nevite jak to mam udelat aby mi to ukladalo hodnotu promeny typu string? Predem dik

Nahlásit jako SPAM
IP: 213.250.224.–
Quiark0
Věrný člen
16. 5. 2009   #2
-
0
-

Zkusil bych použít metodu c_str() třídy string.

Anebo používat C++ streamy namísto starého fprint atd.



#include <iostream>
...
ofstream f("out.txt");
f << mujstring << endl;

Nahlásit jako SPAM
IP: 193.86.140.–
bukaj_0010
Věrný člen
16. 5. 2009   #3
-
0
-
Nahlásit jako SPAM
IP: 88.101.128.–
Jak se správně ptát? -> http://www.hash.cz/inferno/otazky.html[br][br] Po programování je člověk hladovej.
michi
~ Anonymní uživatel
14 příspěvků
16. 5. 2009   #4
-
0
-

To Quiark :
Takze pri pouziti streamu nemusim nijak otvirat ani zavirat? Zkusil sem to udelat podle toho udelat a chodi to, ale ten soubor se mi vzdy pri otevreni vymaze. Jak mam otevrit soubor treba pro cteni nebo pro zapis na konec souboru?

Nahlásit jako SPAM
IP: 213.250.224.–
michi
~ Anonymní uživatel
14 příspěvků
16. 5. 2009   #5
-
0
-

Takze pri pouziti streamu nemusim nijak soubor otvirat ani zavirat? ....

Nahlásit jako SPAM
IP: 213.250.224.–
Bald3rr0
Super člen
16. 5. 2009   #6
-
0
-
Nahlásit jako SPAM
IP: 82.100.0.–
Quiark0
Věrný člen
16. 5. 2009   #7
-
0
-

On se zavře sám jakmile proměnná f (v mém příkladu) zmizí. A přemaže se ti proto, že to je standardní chování konstruktoru objektu ofstream bez dalšího parametru. Když použiješ variantu s parametrem nebo odkazovanou metodu open, můžeš si to nastavit podobně jako u fopen.

Nahlásit jako SPAM
IP: 193.86.140.–
michi
~ Anonymní uživatel
14 příspěvků
17. 5. 2009   #8
-
0
-

Tak tisk do souboru uz sem vyresil. Ale ted mam problem pri nacitani, nevim jak mam pouzit eof()... zkousel sem to timto zpusobem:

fstream f;


f.open("SeznamSkladeb.txt", fstream::in | fstream::app);
while (ios::eof(f)){

}
f.close();
ale hlasi mi to chybu ze eof nemuze mit jeden argument nebo tak neco.

Nahlásit jako SPAM
IP: 213.250.224.–
KIIV
~ Moderátor
+43
God of flame
17. 5. 2009   #9
-
0
-

To michi : spis f.eof() ... sou to precijen objekty

Nahlásit jako SPAM
IP: 80.250.1.–
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, 7 hostů

Podobná vlákna

Datový typ — založil Rade.k

Dátový typ — založil zonda

Datový typ v tabulce — založil LiDr

Špatný datový typ? — založil Díkydíky

Datový typ real - spěchá — založil Honza

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ý