Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » C / C++ (ANSI-Standard) » die letzetn 10 zeilen lesen

Forum | Hilfe | Team | Links | Impressum | > Suche < | Mitglieder | Registrieren | Einloggen
  Quicklinks: MSDN-Online || STL || clib Reference Grundlagen || Literatur || E-Books || Zubehör || > F.A.Q. < || Downloads   

Autor Thread - Seiten: > 1 <
000
11.10.2003, 14:00 Uhr
~RedEagle
Gast


wie kann ich mit dem befehl [ifstream in("change.txt");] (oder so) die letzten 10
einträge in der datei lesen (fals vorhanden)
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
001
11.10.2003, 14:30 Uhr
FloSoft
Medialer Over-Flow
(Administrator)


hi manuell machen, was fertiges gibt es da nicht!
--
class God : public ChuckNorris { };
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
002
11.10.2003, 21:51 Uhr
~RedEagle
Gast


Wie soll ich das denn manuel machen???
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
003
11.10.2003, 22:11 Uhr
Pablo
Supertux
(Operator)


Du liest alle Zeilen, wie normal und speicherst sie in einem char** oder in einem vector<string>, wenn du C++ benutzt. Du weißt, wie viele Zeile insgesamt gibt und dann nimmt du die 10 letzt Zeilen.
--
A! Elbereth Gilthoniel!
silivren penna míriel
o menel aglar elenath,
Gilthoniel, A! Elbereth!
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
004
12.10.2003, 07:50 Uhr
~RedEagle
Gast


Ich bin absoluter anfänger und weiß überhaupt nicht wie das geht.
Währe schön, wenn du mir einen Beispielcode schreiben würdest (in c++).

Danke im vorraus

MFG RedEagle
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
005
12.10.2003, 09:54 Uhr
Pablo
Supertux
(Operator)



C++:
#include <iostream>
#include <fstream>
#include <stdlib.h>
#include <stdio.h>
#include <vector.h>
#include <string>
                        
#define MAX_LINE 4096
                
                
int main(int args, char** argv)
{
        if (args != 2) {
                std::cout << "usage: " << argv[0] << " <filename>\n";
                return EXIT_SUCCESS;
        }
        ifstream file (argv[1], ios::in|ios::nocreate);
        if (!file) {
                cerr << "Can't open input file" << endl;
                return EXIT_FAILURE;
        }
        vector<string> lines;
        char tempLine[MAX_LINE];
        while(file.getline(tempLine, MAX_LINE)) {
                if (file.fail()) {
                        cerr << "Too large an input line. Unable to continue..." << endl;
                        exit(2);
                }
                string tmp=tempLine;
                lines.push_back(tmp);

        }

        // hier die letzten 10 Zeilen anzeigen:
        for(unsigned int i=0; i<10; ++i) {
                std::cout << lines[lines.size()-i-1] << std::endl;
                if (lines.size() < 10 && i==lines.size()-1) break;
        }
        
        return EXIT_SUCCESS;
}



Das sollte reichen, den Rest kannst du dir selber überlegen.


Zitat:
~RedEagle postete
Ich bin absoluter anfänger und weiß überhaupt nicht wie das geht.
Währe schön, wenn du mir einen Beispielcode schreiben würdest (in c++).



Ich habe kein Problem damit, deine Fragen zu beantworten oder ein komplettes Beispiel Programm zu schreiben, du musst aber auch etwas dafür tun, und zwar versuchen alleine zu machen. Ich meine nur, du sagst ja, du bist ein Anfänger. Ich war, hier alle waren einmal Anfänger, das ist ja normal. Wenn du ein Anfänger bist, und C++ lernen willst, dann schlage ich vor, nimm ein Buch über C++ und lernen anhand des Buches und versuche deine Programme alleine zu machen und wenn du wirklich nicht weiter kommst, hier fragen.

Ich hab schon gepostst wie das geht, das nur eine von vielen Möglichkeiten, die man hat, dieses Problem zu lösen, aber sieht so aus, als hättest du dich nicht bemüht, meinen Vorschlag einzusetzen und so lernst du garantier nicht. Versuche, wie gesagt, alleine zu machen und das was du nicht hinkriegst, kannst du fragen. Und wenn du wirklich keinen Plan hast, wie das geht, weil du nicht die nötige Kenntnisse dafür hast, zum Beipsiel, weil du nicht weißt, wie man mit Verktoren umgehet, oder was weiß ich, dann solltest du eine Stufe zurückgehen und das zuerst verstehen. Nimm es nicht persönlich, ich will dich nicht angreifen, ich will dir nur helfen und jemand muss doch die Wahrheit sagen. Das Lernen ist ein Prozeß und du kannst nicht von heute bis morgen plötzlich alles können, immer mit der Ruhe. Jetzt habe ich eine Frage. Von meinem letzten Post, was hast du von meinem Vorschlag nicht verstanden? Ich meine nur, sosnt hättest du ja selber gemacht, also gibt es etwas was du nicht wusstest, wie das geht, Oder?
--
A! Elbereth Gilthoniel!
silivren penna míriel
o menel aglar elenath,
Gilthoniel, A! Elbereth!
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
006
12.10.2003, 13:55 Uhr
~RedEagle
Gast


zu der Frage, was ich nicht verstanden habe:
[speicherst sie in einem char** oder in einem vector<string>] Das habe ich nicht verstanden

und ich habe auch ein Buch, nur da sind nicht die Probleme erklärt, die ich habe und natürlich habe ich zu diesem Probel (generell mit externen Dateien Arbeiten) auch was im internet gesucht, aber nichts brauchbares gefunden.

MFG RedEagle

Ps.
Danke für den Code
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
007
12.10.2003, 15:56 Uhr
Pablo
Supertux
(Operator)


Also lag das Problem darin, dass du 1. nicht weißt, wie man mit char** oder vevtor<string> umgeht oder 2. dass du nicht weißt, wie man mit Dateien umgeht?


Bearbeitung:
Hier haben ich einen Link zu einer guten Seite mit der ganzen STL. Sie erklärt wie man das Zeugt benutzt.
www.sgi.com/tech/stl/


--
A! Elbereth Gilthoniel!
silivren penna míriel
o menel aglar elenath,
Gilthoniel, A! Elbereth!

Dieser Post wurde am 12.10.2003 um 16:20 Uhr von Pablo Yanez Trujillo editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
008
12.10.2003, 18:27 Uhr
~RedEagle
Gast


Stimmt beides

und DANKE für den Link

MFG RedEagle
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
009
12.10.2003, 19:02 Uhr
Pablo
Supertux
(Operator)


Dann solltest du ein Buch mit diesen Grundlagen kaufen/lesen, oder was weiß ich. Das ist nicht so einfach, aber nicht so schwer.
--
A! Elbereth Gilthoniel!
silivren penna míriel
o menel aglar elenath,
Gilthoniel, A! Elbereth!
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
Seiten: > 1 <     [ C / C++ (ANSI-Standard) ]  


ThWBoard 2.73 FloSoft-Edition
© by Paul Baecher & Felix Gonschorek (www.thwboard.de)

Anpassungen des Forums
© by Flo-Soft (www.flo-soft.de)

Sie sind Besucher: