からデータを読み取りQTableWidget
、CSV ファイルに保存しようとしています。
ファイルに保存された値は正しいですが、すべての行の最初の列の先頭に不要な文字があります。
これが私のコードです:
void Task::on_button_Export_clicked()
{
QString fileName = QFileDialog::getSaveFileName(this,tr("Export Task List"), "",tr("CSV Files (*.csv)"));
if (fileName.isEmpty())
return;
else
{
QFile file(fileName);
if (!file.open(QIODevice::WriteOnly))
{
QMessageBox::information(this, tr("Unable to open file"),
file.errorString());
return;
}
QDataStream out(&file);
out.setVersion(QDataStream::Qt_5_4);
int rowCount = ui->tableWidget->rowCount();
int colCount = ui->tableWidget->columnCount();
for (int i = 0; i < rowCount; i++)
{
QString str(QString::null);
/* if (i > 0)
{
str = "\n";
}*/
for (int j = 0; j < colCount; j++)
{
if (j > 0)
{
str += ",";
}
QTableWidgetItem* item = ui->tableWidget->item(i,j);
str += item->data(Qt::DisplayRole).toString();
}
str += "\n";
out << str;
}
}
}
保存されたファイルは次のようになります。
ÎDPC Task
ÞMain Task
ÌWorkLoop
ÐWorkLoop
ÌIST0
ÊIST1
ÆIST2
Qt 5.4.0 を使用しています。
ここで何か助けていただければ幸いです。