Dateien lesen/speichern?



  • Inetwa so:

    std::ifstream i("file.txt");
    std::string str;
    while (std::getline(i, str))
    {
        std::cout << str << std::endl;
    }
    


  • oder mit MFC

    CStdioFile inFile;  // inFile = Dateiname
    	inFile.Open( tmpFile, CFile::modeRead | CFile::typeBinary );
        inFile.SeekToBegin();
    
    	while( inFile.ReadString( Buffer ) )
    ...
    


  • Ja, oder mit der Suchfunktion des Forums 😉

    SCNR



  • CString tmpFile;
        tmpFile = "Text.txt";
        CStdioFile inFile;  // inFile = Dateiname
        inFile.Open( tmpFile, CFile::modeRead | CFile::typeBinary );
        inFile.SeekToBegin();
    
        while( inFile.ReadString( Buffer ) )
        {
            ?????
        }
    

    Also mein Quelltext würde jetzt so aussehen wie kann ich den jetzt die einzelnen Zeilen in Variablen speichen? Irgendwie muss er ja was zurückgeben oder so. Ich blicke da noch nicht so recht durch wie das funktionieren soll



  • CString Buffer;
    

    Buffer ist also ein CString. Und damit hast du die gelesene Zeile in einer Variable.

    grüssle 🙂



  • Hat jemand eine Ahnung warum das nicht funktioniert?

    ofstream Datei(m_Dateiname);
    
    	if(!Datei.good())
    	{
    	    MessageBox("Die Datei zum Speichern konnte nicht geladen werden!","Fehler", MB_OK | MB_ICONINFORMATION);
    	}
    
    	Datei<< m_Name;
    	Datei<< "\n";
    	Datei<< m_Nachname;
    	Datei<< "\n";
    	Datei<< m_Text;
    	Datei<< "\n";
    
    	Datei.close();
    

    Also er bekommt einen Dateinamen und alles. In der Vaibale steht auch Inhalt drinne, aber er nimmt die einfach nict.

    Wenn ich das jedoch so schreibe, dann läuft das 1a.

    Datei<< "Angela";
    	Datei<< "\n";
    	Datei<< "Merkel";
    	Datei<< "\n";
    	Datei<< "ist geil";
    	Datei<< "\n";
    


  • aber er nimmt die einfach nict.

    Was heisst das?????

    -> Wenn m_Name etc. std::string / std::wstring sind, dann kannst Du versuchen m_Name.c_str().

    -> Ich denke es gibt keine Überladung von << für std::string / std::wstring.



  • Ich meine damit, dass er den Inhalt von m_Name nicht in die Datei schreibt. Sondern nur wenn ich einen String hinterlege.



  • Lenni schrieb:

    Ich meine damit, dass er den Inhalt von m_Name nicht in die Datei schreibt. Sondern nur wenn ich einen String hinterlege.

    m_Name ist eine CString Variable.



  • Lenni schrieb:

    Hat jemand eine Ahnung warum das nicht funktioniert?

    ofstream Datei(m_Dateiname);
    
    	if(!Datei.good())
    	{
    	    MessageBox("Die Datei zum Speichern konnte nicht geladen werden!","Fehler", MB_OK | MB_ICONINFORMATION);
    	}
    
    	Datei<< m_Name;
    	Datei<< "\n";
    	Datei<< m_Nachname;
    	Datei<< "\n";
    	Datei<< m_Text;
    	Datei<< "\n";
    
    	Datei.close();
    

    und wo wird m_Name & Co mit Werten aus der Datei gefüllt?

    grüssle 🙂



  • lang lebe die Dummheit 😃 😃
    Ich habe UpdateData(true) vergessen 😛


Anmelden zum Antworten