我是QT的新手,因此,当我尝试使用QDataStream将数据从QTableView加载并保存到linux中的txt文件中时,出现这样的问题:
txt文件包含tableview中的数据
我想要的只是易于阅读的txt文件中的数据,例如:
数据1;数据2
data3; data3
因此,如何使用QTextStream而不是QDataStream,因为当我使用QTextStream时,我可以像这样在txt中写入输出:
QFile ofile("/home/rizi/LearnQT/tes");
ofile.open(QIODevice::ReadWrite | QIODevice::Text);
QTextStream out(&ofile);
out << line+"\n";
最佳答案
模型中的每个项目都包含多个文本。这就是为什么write函数需要QDataStream实例的原因。如果只保存数据的文本部分是可以的,则可以随时执行以下操作:
qint32 n(model->rowCount()), m(model->columnCount());
stream << n << m;
for(int i=0; i<n; ++i)
for(int j=0; j<m; j++)
stream << model->item(i,j)->text();
关于c++ - 如何使用QTextStream而不是QDataStream进行QTableView的负载保存?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/43751118/