Alles rund um die Programmierung mit Qt
thereapman
Beiträge: 36 Registriert: 6. Juni 2007 15:39
Beitrag
von thereapman » 27. Juli 2007 15:24
HI Leute!
Ich hab ein Objekt das über eine eigene Klasse erstellt wird.
Nun will ich dieses Objekt so wie es ist in ein File speichern.
Dachte mit QDataStream geht das.
Hier maln Codeschnipsel:
Code: Alles auswählen
void TourPrio::save()
{
QString save_file = "tourprio.dat";
//Read from file
QFile priofile(save_file);
if(!priofile.open(QIODevice::WriteOnly))
{
QMessageBox::critical(0,"MDE-Zentrale","Kann Tourprioritäten nicht öffnen!",QMessageBox::Ok);
return;
}
QDataStream data(&save_file);
//Magiccode schreiben
quint32 magiccode = 0x0202352A;
data << magiccode;
for(int i = 0; i < items.size(); i++)
{
TourPrioItem prioitem_save;
prioitem_save = items.at(i);
data << prioitem_save;
}
priofile.close();
}
upsala
Beiträge: 3946 Registriert: 5. Februar 2006 20:52
Wohnort: Landshut
Kontaktdaten:
Beitrag
von upsala » 27. Juli 2007 17:52
Und? Gehts etwa nicht? So ganz ohne Fehlermeldung? Ansonsten C++-'Grundlagen'.
thereapman
Beiträge: 36 Registriert: 6. Juni 2007 15:39
Beitrag
von thereapman » 27. Juli 2007 18:08
So erstmal den Typo mit dem Dateihandle rausgemacht.
Fehlermeldung vom Compiler:
Code: Alles auswählen
error: no match for 'operator<<' in 'data << prioitem_save'
Ist nach studium der QT-Doku auch korrekt.
Nun nochmals die Frage: mit welcher (QT)-Funktion speicher ich ein komplettes Obejkt in ein File (ein fingerzeig würde reichen)?
Christian81
Beiträge: 7319 Registriert: 26. August 2004 14:11
Wohnort: Bremen
Kontaktdaten:
Beitrag
von Christian81 » 27. Juli 2007 18:49
Man kann kein QObject in eine Datei speichern.
Du musst das Laden und Speichern selbst implementieren
MfG Christian
'Funktioniert nicht' ist keine Fehlerbeschreibung