R
warum erst den Buffer (stringlist) ?
und warum die ganzen dinge dynamisch ^^
dialoge streams ... etc , alles was nich unter die QObject hirarchie muss, kann man statisch erzeugen ...
QTableWidgetItem *T_item = new QTableWidgetItem();
brauchst auch ned, weil du bekommst ja nen zeiger auf nen existierendes Object, brauchst quasi nichts selber anlegen ....
entwoehn dich auch vom Basic stil ^^ man sollt in C / C++ variablen erst erzeugen wenn man sie braucht und nicht am beginn eines blockes ...
QFile unterteutzt auch die komplette angabe eines Dateinames, brauchst nicht erst dahinwechseln ...
void save_data(QString pfad, QString filename, QTableWidget *tw_data, int max_row, int max_column)
{
// hier checken ob deine parameter korreckt sind, bei bedarf ...
// Filestream erstellen
QFile file(pfad + "\\" + filename);
if(file.open(QIODevice::WriteOnly | QIODevice::Text))
{
QTextStream out(file);
for(int irow = 0; irow < max_row; ++irow )
{
for(int icol = 0; icol < max_column; ++icol)
{
QTableWidgetItem *pItem = tw_data->item(irow,icol);
if(pItem )
{
out << pItem->text() << "\t"; // text inklusive tab
}
}
out << "\r\n"; // Zeilenvorschub, keine ahnung obs da ne konstante fuer gibt ...
}
file.close();
}
else
{
// error handling falls das oeffnen schief geht ...
}
}
Hoffe sind ned viele fehler drinnen, nehm meist die stl um textfiles zu schreiben ...
Unter QT bietet sich XML quasi an ^^
Ciao ...