Ich habe ein Programm, das eine Datei aus einer Anzahl in seinem dezimal, hexadezimal und oktal Form erstellt:Wie kann ich eine Datei lesen, die ich im selben Programm erstellt habe, C++?
int main()
{
int i;
cout << "Enter number" << endl;
cin >> i;
system("pause");
CreateFile(i);
ShowFile();
return 0;
}
void CreateFile(int i)
{
ofstream file("file.txt", ios::app);
file << "--------------------------------\n";
file << "Number in decimal is:" << i << "\n";
file << hex << setiosflags(ios::uppercase);
file << "Number in hex is:: " << i << "\n";
file << dec << resetiosflags(ios::showbase);
file << oct << setiosflags(ios::uppercase);
file << "Number in octal is: " << i << "\n";
file.close();
}
jedoch Ich weiß nicht, wie es zu lesen in der Konsole:
void showFile()
{
int open;
ifstream file("file.txt", ios::in);
while (!file.eof() == false) {
file >> open;
cout << "The number is " << open << endl;
}
}
Wie kann ich es öffnen?
'while (! Archivivo.eof() == false)' also wollen Sie die Datei nur lesen, wenn EOF erreicht ist? Beachten Sie auch, dass "archivo" nicht im gebuchten Code deklariert ist. – MikeCAT
All das macht keinen Sinn. Sie schreiben etwas Text in Ihre Ausgabedatei und möchten dann eine einzelne Zahl daraus lesen? Dies erfordert ein ausgefeilteres Parsen. –
Bitte prüfen Sie [Warum wird iostream :: eof innerhalb einer Schleife als falsch angesehen?] (Http://stackoverflow.com/questions/5605125/why-is-iostreameof-inside-a-loop-condition-sidered-wrong) . –