Russian Qt Forum
Ноябрь 24, 2024, 09:37
Добро пожаловать,
Гость
. Пожалуйста,
войдите
или
зарегистрируйтесь
.
Вам не пришло
письмо с кодом активации?
1 час
1 день
1 неделя
1 месяц
Навсегда
Войти
Начало
Форум
WIKI (Вики)
FAQ
Помощь
Поиск
Войти
Регистрация
Russian Qt Forum
>
Forum
>
Qt
>
Общие вопросы
>
читать поток до того как всетретится сочетание символов<a
Страниц: [
1
]
Вниз
« предыдущая тема
следующая тема »
Печать
Автор
Тема: читать поток до того как всетретится сочетание символов<a (Прочитано 5987 раз)
noname.pl
Гость
читать поток до того как всетретится сочетание символов<a
«
:
Февраль 09, 2007, 22:19 »
привет всем. хочу читать поток QTextStream, ассоциированный с текстовым файлом до того, как встретится последовательность символов, например <123>. не нашел в доке (а скорее туплю). спасибо за помощь!
Записан
Racheengel
Джедай : наставник для всех
Offline
Сообщений: 2679
Я работал с дискетам 5.25 :(
читать поток до того как всетретится сочетание символов<a
«
Ответ #1 :
Февраль 10, 2007, 00:39 »
читаешь по байту и запоминаешь посл. считанные (n штук). Каждый раз проверяешь, если запомненные и тока что прочитанный байты равны этой последовательности, то усе. Иначе тока что прочитанный байт закидываешь в конец запомненных и читаешь далее.
Записан
What is the 11 in the C++11? It’s the number of feet they glued to C++ trying to obtain a better octopus.
COVID не волк, в лес не уйдёт
noname.pl
Гость
читать поток до того как всетретится сочетание символов<a
«
Ответ #2 :
Февраль 10, 2007, 14:28 »
=) это понятно, но такой спасоб не очень красив. надеялся что мне подскажут, возможно, как это сделать через seek или что-то в этом роде. ... возможно будет удобнее сделать readAll в какой-то QString буфер и разбирать уже его.
Записан
mega_m
Гость
читать поток до того как всетретится сочетание символов<a
«
Ответ #3 :
Февраль 10, 2007, 16:20 »
Собственно если последовательность символов не сложная или (и) мала, то делать как сказал Racheengel, а так на основе конечного автомата.
Записан
nova
Гость
читать поток до того как всетретится сочетание символов<a
«
Ответ #4 :
Февраль 10, 2007, 19:27 »
А по моему, если данных не много, то проше читать фсе в буфер и разбирать его.
Записан
noname.pl
Гость
читать поток до того как всетретится сочетание символов<a
«
Ответ #5 :
Февраль 11, 2007, 04:49 »
Цитата: "mega_m"
Собственно если последовательность символов не сложная или (и) мала, то делать как сказал Racheengel, а так на основе конечного автомата.
можно пример?
2nova%
данных несколько мегабайт текстовых файлов.
Записан
nova
Гость
читать поток до того как всетретится сочетание символов<a
«
Ответ #6 :
Февраль 11, 2007, 20:26 »
Посмотри реализацию QIODevice::readLineData в исходниках QT. там все просто
замени на свое условие выхода из цикла
Записан
Racheengel
Джедай : наставник для всех
Offline
Сообщений: 2679
Я работал с дискетам 5.25 :(
читать поток до того как всетретится сочетание символов<a
«
Ответ #7 :
Февраль 13, 2007, 00:21 »
Тогда просто читаешь, пока не встретишь первый нужный символ. Если так - сравниваешь все следующие подряд с образцом. Но тебе все равно придется КАЖДЫЙ символ читать, при чем тут seek?
Записан
What is the 11 in the C++11? It’s the number of feet they glued to C++ trying to obtain a better octopus.
COVID не волк, в лес не уйдёт
noname.pl
Гость
читать поток до того как всетретится сочетание символов<a
«
Ответ #8 :
Февраль 15, 2007, 03:27 »
2Racheengel%
думал, может есть какой-то более "элегантный" способ (уже написаный метод), а так конечно чтение по байту. в qt ведь все нашару, почему бы не на столько =)
Записан
Racheengel
Джедай : наставник для всех
Offline
Сообщений: 2679
Я работал с дискетам 5.25 :(
читать поток до того как всетретится сочетание символов<a
«
Ответ #9 :
Февраль 16, 2007, 00:48 »
та вроде нету...
Записан
What is the 11 in the C++11? It’s the number of feet they glued to C++ trying to obtain a better octopus.
COVID не волк, в лес не уйдёт
Страниц: [
1
]
Вверх
Печать
« предыдущая тема
следующая тема »
Перейти в:
Пожалуйста, выберите назначение:
-----------------------------
Qt
-----------------------------
=> Вопросы новичков
=> Уроки и статьи
=> Установка, сборка, отладка, тестирование
=> Общие вопросы
=> Пользовательский интерфейс (GUI)
=> Qt Quick
=> Model-View (MV)
=> Базы данных
=> Работа с сетью
=> Многопоточное программирование, процессы
=> Мультимедиа
=> 2D и 3D графика
=> OpenGL
=> Печать
=> Интернационализация, локализация
=> QSS
=> XML
=> Qt Script, QtWebKit
=> ActiveX
=> Qt Embedded
=> Дополнительные компоненты
=> Кладовая готовых решений
=> Вклад сообщества в Qt
=> Qt-инструментарий
-----------------------------
Программирование
-----------------------------
=> Общий
=> С/C++
=> Python
=> Алгоритмы
=> Базы данных
=> Разработка игр
-----------------------------
Компиляторы и платформы
-----------------------------
=> Linux
=> Windows
=> Mac OS X
=> Компиляторы
===> Visual C++
-----------------------------
Разное
-----------------------------
=> Новости
===> Новости Qt сообщества
===> Новости IT сферы
=> Говорилка
=> Юмор
=> Объявления
Загружается...