Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » C / C++ (WinAPI, Konsole) » Dateiverarbeitung HILFEEEEEEE!!!

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
17.02.2007, 03:25 Uhr
~Salvatore
Gast


Hi Leute!
Ich hab mal ne Frage zum Thema "Dateiverarbeitung"

Also in meinem Programm lese ich zum einen eine Datei ein, in der Spielernamen, sowie ihre IDs und anzahl der WINS und LOSES gespeichert sind!
Und das einlesen/speichern und ausgeben klappt prima.
Hier mal ein Beispiel einer eingelesenen Datei "bots.txt":


Code:
[BID][NAME][WINS][LOSES]
0 Bill 4 2
1 Heinz 2 8
2 Harald 3 6
3 Bongo 0 0
4 Schranz 0 0
5 Dieter 0 0
6 Doug 0 0
7 SnoopDogg 0 0
8 DMX 0 0
9 WOLF 0 0


hier ist meine Funktion zum einlesen der Bots:


C++:
void bots_einlesen()
{
    ifstream fbots;
    fbots.open("bots.txt");
    fbots.getline(trash,100);
    for(int a=0;fbots.good();a++)
        fbots>>bots[a].BID>>bots[a].name>>bots[a].wins>>bots[a].loses;
    fbots.close();
}


-> In "trash" speicher ich einfach die erste zeile, das mit "[BID]...", damit der zeiger danach beim ersten bot steht zum einlesen.

NAJA!!!! Jetzt zocke ich ne runde, und ich sage mal "DMX" mit der BotID (BID) 8 hat gewonnen.
FRAGE:
Wie kann ich DANN bei "DMX" die zahl für WINS verändern? Wie gelange ich an diese stelle? Gibt es Befehle, mit denen ich die zeile angeben kann, in der der zeiger stehen soll? bzw. kann ich eine komplette zeile ändern?

BITTE HELFT MIR!


mfg. SALVATORE
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
001
17.02.2007, 09:29 Uhr
Oliver
S2-Pixelgeneral


Mit fbots.seekg kannst du an eine beliebige Stelle in der Datei springen. Aber wenn die Datei so klein ist, wäre es wohl das einfachste, sie einfach nochmal neu zu schreiben an jedem Spielende.
--
Demokratie ist die Diktatur der Mehrheit.

www.siedler25.org/ ( Siedler2 - Remake )
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
002
17.02.2007, 10:18 Uhr
Blubber2063



Das kann er schon, aber ihm fehlt ja die Stelle wo das ganze steht, schießlich kann ja der Username und die Win und Loszahl belieg lang/gross sein. Deshalb wirst du immer die Datei bis zu dem Punkt auslesen müssen und dann verändern und nebenbei natürlich neu schreiben.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
003
17.02.2007, 11:22 Uhr
~Salvatore
Gast


ja ok!
hab ja ein botsarray und DARIN die werte zu aktualisieren ist ein kinderspiel!
dann lass ich die datei eben neu schreiben!

DANKE!
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
Seiten: > 1 <     [ C / C++ (WinAPI, Konsole) ]  


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: