Я ученик-программист, использующий QT для разработки и применения для работы. В настоящее время я разрабатываю функции сохранения, в которых данные берутся из таблицы и сохраняются в файле. У меня возникают проблемы, когда я пытаюсь записать данные в столбцы. Не путать никого; моя проблема заключается в форматировании текста WHEN SAVING из таблицы данных; не читая его. Таким образом, в настоящее время, когда данные сохраняются из моей таблицы она сохраняется в файл и выглядит следующим образом:Использование iomanip для форматирования вывода данных в текстовый файл с Qt
0 0.048 300 101325 0 0
10 0.048 300 101325 0 0
Мне нужно, чтобы это выглядело как этот
0 0.048 300 101325 0 0
10 0.048 300 101325 0 0
В ходе исследования я наткнулся setw из iomanip библиотека в C++, которая устанавливает минимальное количество символов для заполнения данных и затем использует остальное как дополнение. Звучит отлично? Проблема в том, что я не могу заставить ее работать ни с чем, кроме cout; для чего мне это не нужно. Мне нужно, чтобы они в основном добавляли пробелы в мою строку до их выписки.
Я также чувствую, что у Qt, вероятно, есть что-то, что поможет мне выполнить то, что мне нужно здесь (намного проще). Я просто не могу показаться, чтобы найти эту функцию после того, как refencing QString documentation, QStringList Doucmentation, и больше всего QTextStream Documentation.
В настоящее время мой сохранить функция выглядит следующим образом:
QTextStream data(&saveFileAsscf);
QStringList tmpList;
for (int x = 0; x<ui->tableWidgetReaderTable->rowCount(); x++)
{
strList.clear();
for(int a = 0; a < ui->tableWidgetReaderTable->columnCount(); a++)
{
strList << ui->tableWidgetReaderTable->item(x,a)->text();
}
data <<strList.join(" ") << "\n";
}
Я уверен, что setFieldWidth мой ответ от QTextStream Documentation., но я не могу заставить его работать правильно. Пробовал:
data.setFieldWidth(13) << strList.join(" ") << "\n";
Я надеюсь, что это простой ответ для кого-то, и я просто нарваться блокировать некоторые авторы, но любая помощь будет apperciated в достижении этого. Спасибо, что прочитал мой пост, и я признателен за любую помощь, которая способствовала устранению пробела здесь!
действительно; предположим, что я мог бы использовать свой поток Text во внутреннем цикле для достижения желаемого эффекта (то есть, как только setFieldWidth работает правильно). –
Каков тип 'strList'? –
комбинация методов QString, таких как 'leftJustified()' и 'rightJustified()' может вам тоже помочь – unexplored