7 #include <QAbstractItemModel>
12 filename(filename), model(0)
31 static void writeValue(QTextStream& f,
const QString& value)
33 QString escaped = value;
34 escaped.replace(
'"',
"\"\"");
35 f <<
"\"" << escaped <<
"\"";
38 static void writeSep(QTextStream& f)
43 static void writeNewline(QTextStream& f)
51 if (!file.open(QIODevice::WriteOnly | QIODevice::Text))
53 QTextStream out(&file);
57 numRows =
model->rowCount();
61 for (
int i = 0; i <
columns.size(); ++i) {
65 writeValue(out,
columns[i].title);
70 for (
int j = 0; j < numRows; ++j) {
71 for (
int i = 0; i <
columns.size(); ++i) {
76 writeValue(out, data.toString());
83 return file.error() == QFile::NoError;