Я пытаюсь преобразовать QTableView, заполненный данными QSQLTableModel, в файл CSV. Мой текущий код следующий (на самом деле похож на тот, что был опубликован здесь уже):
QFile f( "table.csv" );
if (f.open(QFile::WriteOnly | QFile::Truncate))
{
QTextStream data( &f );
QStringList strList;
for( int r = 0; r < ui->table->model()->rowCount(); ++r )
{
strList.clear();
for( int c = 0; c < ui->table->model()->columnCount(); ++c )
{
QVariant data = ui->table->model()->index( r, c ).data();
strList << "\" "+data.toString()+"\" ";
}
data << strList.join( ";" )+"\n";
}
f.close();
}
Это работает отлично, за исключением того, что языковой стандарт неправильный, то есть точки / запятые в двойных числах, датах и т. Д. Языковой стандарт приложения правильный, однако QTableView отображает все правильно.
Есть ли способ установить QLocale или использовать его как-то при преобразовании QVariant :: toString ???
Задача ещё не решена.