Announcement

Collapse
No announcement yet.

f.open, aber welcher Modus?

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • f.open, aber welcher Modus?

    Hallo zusammen!

    Bin ein Programm am schreiben, das u.A. die Möglichkeit hat, mehrere Benutzer anzulegen. Gleichzeitig besteht auch die Möglichkeit, einen nicht mehr gewünschten Account zu löschen.

    Die einzelnen Accounts speichere ich in einer Datei namens "userliste".

    Diese ist folgendermaßen aufgebaut:

    Code:
    user1
    user2
    user3
    user4
    nun möchte ich, das wenn z.b. "user2" seinen Account löschen will, das der Eintrag "user2" in der userliste verschwindet.

    Habe gedacht, mit folgendem Code würde es klappen, wie ich es will:

    Code:
    void Del_User()                                                          
      	{                                                                    
       	f.open("userliste", ios::in |ios::out);
    
          string user;
    		int i=0,z,line;
    
          cout<<"\n\n";
    
          while(!f.eof())
          	{
    
             	getline(f,user);
    
                i++;
    
          		if(user==benutzername)
    		      	{
          		   	line=i;
                      cout<<"User in Line "<<line;    //Nur zu Überprüfung meinerseit eingebaut.
                      sleep(2);
    
    		         }
    
             }
    
    
          for(z=0;z<=i; z++)
          	{
             	if(z==line)
    		      	{
    		           	f<<endl;
     				   }
             }
    
    
    		f.close();
    
       	LogOut();
    
       }

    Weiß jemand, woran das liegen könnte? vllt einen anderen Modus als ios :: out nutzen? wenn ja welchen?

    Danke im Vorraus

    Yanfred
    Zuletzt editiert von Gast_1; 06.05.2008, 18:36. Reason: ios :: out wurde als smilie dargestellt.

  • #2
    Man kann aus einer Datei nicht "herausschneiden" oder wie hier eine neue Zeile schreiben. Wenn alle "Zeilen" einer Datei gleich lang sind, kann man die nicht gewünschten Einträge in der gleichen Länge überschreiben. Ansonsten Dateien einlesen, Datei löschen, Daten ändern, Daten neu schreiben
    Christian

    Comment

    Working...
    X