1. Artikel
  2. Mitglieder
    1. Letzte Aktivitäten
    2. Benutzer online
    3. Team
    4. Mitgliedersuche
  3. Forum
  • Anmelden
  • Registrieren
  • Suche
Dieses Thema
  • Alles
  • Dieses Thema
  • Dieses Forum
  • Artikel
  • Seiten
  • Forum
  • Erweiterte Suche
  1. Paules-PC-Forum.de
  2. Forum
  3. Programmierung
  4. C/C++, Visual C++, Visual C++.NET

Problem: c++ Inhalt einer Textdatei in erstellte Textdatei speichern

  • CaS
  • 6. August 2011 um 03:21
  • CaS
    Anfänger
    Beiträge
    1
    • 6. August 2011 um 03:21
    • #1

    Hallo zusammen, ich programmiere seit einer Woche C++ und will ein Programm schreiben was den Inhalt einer Textdatei in eine andere erstelllte Textdatei abspeichert, ich habe auch einen Quellcode und bin, wie ich finde auch schon fast am ende.

    DAs Problem ist das das Programm nur eine Zeile des Inhalts der 1.Textdatei in der 2.txt abspeichert ich weiss nicht warum,[Blockierte Grafik: http://style.tutorials.de/v6/images/smilies/frown.gif] der Inhalt der 1. Textdatei wird in der console hingegen komplett ausgegeben.....

    C
    #include <stdafx.h> 
    #include <fstream> 
    #include <iostream> 
    #include <string>   
    using namespace std; 
    using namespace System;   
    int main(array<System::Char ^> ^args) 
    {   ifstream datei ("test.txt");     
    ifstream datei2;     
    char inhalt[1024];       
    if(!datei)    // wenn er die Datei nicht findet.....     
    {     cout << "Datei wurde nicht gefunden" << endl; // ...dann das hier ausgeben     
    getchar ();     
    return -1;     }     
    datei.seekg(0L, ios::beg); // an Anfang der Datei springen
    
    
    datei.getline(inhalt); // inhalt der Datei auslesen
    
    
        datei2.open("beispiel.txt", ios::out); // zweite textdatei erstellen
    
    
         datei2.write(inhalt); // inhalt der ersten in die zweite textdatei speichern   
    
    
    datei.close(); // bei Dateien schliessen     
    
    
    datei2.close(); //     
     
    cout << înhalt << endl; // Inhalt der 1 Textdatei ausgeben    
     
    getchar();   
    
    
    return 0; }
    Alles anzeigen
  • uran0s
    Anfänger
    Beiträge
    13
    • 7. September 2011 um 16:56
    • #2

    Hallo Cas,

    auch wenn die Antwort vielleicht etwas spät kommt, aber vielleicht hilft es ja jemand anderen.

    Also nun zu deinem Problem:

    1. Eigentlich benutzt mein für die Ausgabe ofstream
    2. Der Befehl write wird eigentlich so richtig benutzt:

    Code
    ostream.write ( const char* s , streamsize n );

    Der zweite Parameter n gibt die Anzahl der Zeichen an, die in die Datei geschrieben werden.
    In deinem Fall sollte das die Lösung sein:

    Code
    datei << inhalt;


    Kleiner Tipp: Versuch deinen Code übersichtlicher zu formatieren, dann fällt es dir und anderen leichter Fehler zu finden.

    Bis dann,
    uran0s

  • Unregistriert
    Gast
    • 26. November 2011 um 16:48
    • #3
    Code
    BOOL CopyFile(
      LPCTSTR lpExistingFileName,
                              // pointer to name of an existing file
      LPCTSTR lpNewFileName,  // pointer to filename to copy to
      BOOL bFailIfExists      // flag for operation if file exists
    );



    RTFM (read the fuc... manual)

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!

Benutzerkonto erstellen Anmelden

Windows 11

  1. Datenschutzerklärung
  2. Impressum
Community-Software: WoltLab Suite™