从 QStringList 复制到文本文件

Sij*_*ith 3 qt

如何将数据从 Qstring 列表复制到文本文件以供以后检索?是否可以在 Qt 中做到这一点?

如何使用 QFile 将换行符放入文本字​​段中我是这样做的

QFile data("output.txt"); 
if (data.open(QFile::Append )) 
{ 
 QTextStream out(&data);  
 out << fileDet[i]; 
 data.putChar('\n');
}
Run Code Online (Sandbox Code Playgroud)

mkj*_*mkj 6

看看http://doc.qt.io/archives/4.6/qfile.html#detailshttp://doc.qt.io/archives/4.6/qtextstream.html#details

一些示例代码:

#include <QFile>
#include <QStringList>
#include <QTextStream>
#include <cstdlib>
#include <iostream>

int main() {
  QStringList l;
  l += "one";
  l += "two";

  // write data
  QFile fOut("file.txt");
  if (fOut.open(QFile::WriteOnly | QFile::Text)) {
    QTextStream s(&fOut);
    for (int i = 0; i < l.size(); ++i)
      s << l.at(i) << '\n';
  } else {
    std::cerr << "error opening output file\n";
    return EXIT_FAILURE;
  }
  fOut.close();

  // read data
  QStringList l2;
  QFile fIn("file.txt");
  if (fIn.open(QFile::ReadOnly | QFile::Text)) {
    QTextStream sIn(&fIn);
    while (!sIn.atEnd())
      l2 += sIn.readLine();
  } else {
    std::cerr << "error opening output file\n";
    return EXIT_FAILURE;
  }

  // print
  for (int i = 0; i < l2.size(); ++i)
    std::cout << qPrintable(l2.at(i)) << '\n';
}
Run Code Online (Sandbox Code Playgroud)