Registrierung Kalender Mitgliederliste Teammitglieder Suche Häufig gestellte Fragen Zur Startseite

Informatiker Board » Themengebiete » Praktische Informatik » Dateien/2D-Vektoren(rückwärts einlesen) » Antwort erstellen » Hallo Gast [Anmelden|Registrieren]

Antwort erstellen
Benutzername: (du bist nicht eingeloggt!)
Thema:
Nachricht:

HTML ist nicht erlaubt
BBCode ist erlaubt
Smilies sind erlaubt
Bilder sind erlaubt

Smilies: 21 von 33
smileWinkDaumen hoch
verwirrtAugenzwinkerngeschockt
Mit ZungeGottunglücklich
Forum Kloppebösegroßes Grinsen
TanzentraurigProst
TeufelSpamWillkommen
LehrerLOL HammerZunge raus
Hilfe 
aktuellen Tag schließen
alle Tags schließen
fettgedruckter Textkursiver Textunterstrichener Text zentrierter Text Hyperlink einfügenE-Mail-Adresse einfügenBild einfügen Zitat einfügenListe erstellen CODE einfügenPHP CODE farbig hervorheben
Spamschutz:
Text aus Bild eingeben
Spamschutz

Die letzten 8 Beiträge
as_string

Ich hab immer noch nicht verstanden, was eigentlich raus kommen soll.
Soll das Ergebnis dann so aussehen:
code:
1:
2:
3:
4:
5:
de232z
bc1
a

oder so:
code:
1:
2:
3:
4:
5:
z232ed
1cb
a

Ersteres wäre zeilenweise umgedreht, letzteres zeichenweise.
Und nochmal zu meinem Lösungsansatz: Bei kleinen Dateien würde man die ganze Datei trotzdem komplett von vorne einlesen und nur die Ausgabe rückwärts machen. Das ist viel schneller, als in der Datei immer einen Schritt rückwärts gehen zu müssen. Bei größeren Dateien würde man das dann wahrscheinlich blockweise machen, um den Hauptspeicher nicht übermäßig zu belegen.
Aber anscheinend ist das hier nicht die gewünschte Lösung. Wenn die Datei zeichenweise rückwärts ausgegeben gelesen werden soll, hätte ich das hier schnell zusammen gehackt (Vorsicht: Ich fange keine Fehler ab und es kann sein, dass es nicht die optimale/sinnvollste Lösung ist! Ich programmiere seit Jahren nicht mehr in C++, bin da nicht so im "Training")
code:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
#include <iostream>
#include <fstream>

int main() {
    std::ifstream file("test.txt", std::ios::binary | std::ios::ate);
    while(file.tellg() > 0) {
        file.seekg(-1, std::ios_base::cur);
        int c = file.peek();
        if(c > 0) {
            std::cout << (char) c;
        }
    }
    file.close();
    return 0;
}


Wichtig dabei: Das ios::ate steht für: Springe ans Ende (at end) beim Öffnen.

Gruß
Marco
beta258 smile

Das war der originale Wortlaut! Kannst du mir bitte helfen?
user684

???
beta258

Zitat:
Original von as_string
Welches Buch? Kannst Du mal die Aufgabe komplett im Original-Wortlaut wiedergeben?
Du hast mir nicht verraten, ob es denn nun Zeilen- oder Zeichenweise rumgedreht werden soll, etc. Aber vielleicht würde es klarer werden, wenn Du einfach die komplette Aufgabe wörtlich zitieren könntest.

Gruß
Marco


a
bc1
de232z

zeigt den Ausdruck von Datei daten.txt
Schreiben Sie ein Programm, dass die Datei rückwärts einliest und auf
dem Bildschirm ausgibt.


Ist aus einem Skript... Soll ich dir das zusenden?
as_string

Welches Buch? Kannst Du mal die Aufgabe komplett im Original-Wortlaut wiedergeben?
Du hast mir nicht verraten, ob es denn nun Zeilen- oder Zeichenweise rumgedreht werden soll, etc. Aber vielleicht würde es klarer werden, wenn Du einfach die komplette Aufgabe wörtlich zitieren könntest.

Gruß
Marco
beta258

Also es bezog sich auf Dateien, die als Ströme realisiert werden.
Und die Programmiersprache ist C++..

Sry, habe vergessen zu erwähnen, dass sich das Kapitel auf 2D Vektoren/Dateien bezog, die Aufgabe nur auf die Datei(-ströme) betraf.
as_string

Zeilenweise oder Zeichenweise?
Welche Programmiersprache, Betriebssystem, etc. Wie groß sind die Dateien typischerweise? Bei kleinen Dateien macht es vielleicht Sinn, die ganze Datei in einem Rutsch in normaler Richtung einzulesen, aber dann nur rückwärts auszugeben. Bei sehr großen Dateien eher nicht.
Was hat das mit 2D-Vektoren zu tun?

Ich finde, wenn man schon will, dass einem andere Leute helfen, könnte man sich bei der Fragestellung auch etwas mehr Mühe geben, wenn ich ehrlich bin...

Gruß
Marco
beta258 Dateien/2D-Vektoren(rückwärts einlesen)

a
bc1
de232z

Ausdruck von datei.txt.

Wie schreibt man ein Programm, dass diese Datei rückwärts einliest und auf dem Bildschirm ausgibt..

Wäre für eure Hilfe sehr dankbar smile