Версия для печати темы

Нажмите сюда для просмотра этой темы в обычном формате

Форум на CrossPlatform.RU _ Qt Ввод/Вывод, Сеть. Межпроцессное взаимодействие _ Чтение строк из файла с escape-символами

Автор: Andrewshkovskii 14.9.2009, 16:07

Есть исходный файлик :
Вагонооборот\n(тыс. ваг/год),Затраты на\nнакопление и\nпереработку\n(тыс.вагоно-часов/год),Транзит без\nпереработки\n(тыс. ваг/год),Транзит с\nпереработкой\n(тыс. ваг/год),Количество\nсортировочных\nпутей
Читается он так :

str = fileStream->readAll();
        hHeaderData = str.split(",",QString::SkipEmptyParts);

str - QString
fileStream - QTextStream
hHeaderData = QStringList
все это необходимо для нормального отображения в хидере и QTabBar'е заголовков, а не огромной строкой..
Так вот, escape-символы игнорируются, т.е они просто отображаются, перевода строки не происходит.
В какую строну копнуть?

Автор: kwisp 14.9.2009, 16:51

Andrewshkovskii,
если честно слабо понял
у тебя файл какой? такой:

Цитата
Вагонооборот\n(тыс. ваг/год),Затраты на\nнакопление и\nпереработку\n(тыс.вагоно-часов/год),Транзит без\nпереработки\n(тыс. ваг/год),Транзит с\nпереработкой\n(тыс. ваг/год),Количество\nсортировочных\nпутей

или такой:
Цитата
Вагонооборот
(тыс. ваг/год),Затраты на
накопление и
переработку
(тыс.вагоно-часов/год),Транзит без
переработки
(тыс. ваг/год),Транзит с
переработкой
(тыс. ваг/год),Количество
сортировочных
путей

?
читал файл с кучей строк все переводы корректно отображались в строке.

Автор: Andrewshkovskii 14.9.2009, 16:59

У меня файл такой, который я показал, т.е в нем содержаться escape-символы, читаю показанным мною методом, и пытаюсь отобразить эти строки в хидере таблицы - имена хидеров показываются с escape-символами..

Автор: SABROG 14.9.2009, 17:11

QHeaderView не понимает управляющих символов C++. Дай ему реальный байт 0A и все.

Автор: kwisp 14.9.2009, 17:23

Цитата(Andrewshkovskii @ 14.9.2009, 17:07) *
В какую строну копнуть?

получается в сторону замены:)

Форум Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)