Qt->Text speichern

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

  • Qt->Text speichern

    Hallo,

    ich programmiere gerade in Qt, und da bin ich gerade dabei, einen Text, welcher in QTextEdit steht, als .txt abzuspeichern.

    Quellcode

    1. #include "mainwindow.h"
    2. #include "ui_mainwindow.h"
    3. #include <QtGui>
    4. #include <QFile>
    5. #include <iostream>
    6. #include <fstream>
    7. void saveHandler()
    8. {
    9. QString sa(ui->textEdit->setPlainText());
    10. std::fstream f;
    11. f.open("text.txt", std::ios::out);
    12. f << sa << std::endl;
    13. f.close;
    14. }
    Alles anzeigen


    Jetzt bekomme ich immer eine Fehlermeldung, dass irgendwas mit den << nicht klappt.
    Kennt jemand die Lösung oder einen anderen Weg, den Inhalt zu speichern? Ich habe schon "gegooglt" aber ich habe nichts gefunden.

    MfG,

    Alpha_Delta
    „Wer einen Fehler gemacht hat und ihn nicht korrigiert, begeht einen zweiten.“ -- Konfuzius
  • Was ist denn genau die Fehlermeldung?


    Muss man nicht wenn man eine Datei schließt name.close(); machen? mit ()
    Ich kenns das Lesen und das Schreibe in txt dateien so das der Variablentyp entweder ofstream(in txt schreiben) oder ifstream(einlesen) ist (hab fstream noch nie probiert)

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von Aalon ()

  • Juhu, es hat geklappt.

    Quellcode

    1. void MainWindow::saveHandler() {
    2. QString message = ui->textEdit->toPlainText();
    3. QString fileName = QFileDialog::getSaveFileName(this, tr("Save Message"), "", tr("Text Files (*.txt);;All Files (*)"));
    4. QFile file(fileName);
    5. if (!file.open(QIODevice::WriteOnly))
    6. {
    7. QMessageBox::information(this, tr("Unable to open file"), file.errorString());
    8. return;
    9. }
    10. QTextStream out(&file);
    11. out << message;
    12. }
    Alles anzeigen


    Danke für alle Anworten.

    MfG,

    Alpha_Delta
    „Wer einen Fehler gemacht hat und ihn nicht korrigiert, begeht einen zweiten.“ -- Konfuzius