Kezdőoldal » Számítástechnika » Programozás » C++-ban, hogy lehet leellenőri...

C++-ban, hogy lehet leellenőrizni egy fájlról, hogy üres-e, illetve, hogy lehet egy fájlból csak az első sort beolvasni (egészeket tartalmaz a sor)?

Figyelt kérdés
2015. ápr. 12. 22:14
 1/10 anonim ***** válasza:
100%

1. Akkor üres, ha nem tudsz belőle olvasni.

2. istream& getline (istream& is, string& str);

2015. ápr. 12. 22:28
Hasznos számodra ez a válasz?
 2/10 SimkoL ***** válasza:
9%
'Akkor üres, ha nem tudsz belőle olvasni. ' Ez így ebben a formában nem igaz :)
2015. ápr. 12. 22:40
Hasznos számodra ez a válasz?
 3/10 A kérdező kommentje:

Az addig világos, hogy nem tud beolvasni, de hogy néz ki az a kód ami eldönti, hogy sikerült-e beolvasni bármit is?

A getlinet én úgy tudom, hogy csak stringeknél tudom használni, de nekem integer-eim vannak az első sorban (ha tévedek javíts ki).

2015. ápr. 12. 22:42
 4/10 A kérdező kommentje:
Azt elfelejtettem leírni, hogy a teljes fájlban van integer és string is (ezért csak részenként tudom beolvasni a teljes fájlt)
2015. ápr. 12. 22:46
 5/10 SimkoL ***** válasza:
Stringet integerré alakítani: [link]
2015. ápr. 12. 22:59
Hasznos számodra ez a válasz?
 6/10 SimkoL ***** válasza:
De egyszerűbb lenne ha valahova feldobnál egy minta file-t és leírnád, hogy teljesen mit is akarsz.
2015. ápr. 12. 23:01
Hasznos számodra ez a válasz?
 7/10 A kérdező kommentje:

A fájlnak úgy kell kinéznie, hogy az első sorban van 2 szám (space-el vagy tab-al elválasztva) amik megadják az utána következő sorok számát (az első stringből álló sorokét, a második pedig integerekből állókét) pl.:

2 3

Mari

Feri

4

5

30

2015. ápr. 12. 23:12
 8/10 A kérdező kommentje:
Magát a fájlt ha helyesen van kitöltve akkor beolvassa, de ha üres, akkor összeomlik a program, ezért akarok egy gyors ellenőrzést berakni még a beolvasás elé.
2015. ápr. 12. 23:13
 9/10 anonim ***** válasza:

Rengeteg módon lehet ellenőrizni, kérdés hogy te hogy olvasod be?


Itt van egy példa:


int a,b;

ifstream bemenet("valami.txt");

if(!(bemenet>>a>>b)) cout<<"Sikertelen beolvasás!"<<endl;

else cout<<"a: "<<a<<", b: "<<b<<endl;

2015. ápr. 13. 00:10
Hasznos számodra ez a válasz?
 10/10 A kérdező kommentje:
Az első sorból a két elemet f>> (két int-be), majd a két vektort ezek alapján egy-egy for ciklussal.
2015. ápr. 13. 19:56

Kapcsolódó kérdések:





Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!