Название: Как читать Enter'ы? Отправлено: PulSar.CE3194694 от Август 01, 2011, 15:09 День добрый!
Пишу себе читалку Fb2. Нужно прочитать бинарник в тэге <binary> для обложки книги. Значит, написал код, он хорошо работает, но есть проблема. Он не хочет читать именно бинарники. Все остальные данные, заключенные в тэгах читает, а это нет. Похимичев, пришел к выводу, что не читает их из-за Enter'ов. Вот пример файла (обрезанный): Код Тут после каждой строки нажата клавиша Enter. Их-за этого в консоль вместо всего этого выводится: "". как быть? Название: Re: Как читать Enter'ы? Отправлено: Странник от Август 01, 2011, 15:20 как читаете, как преобразовываете? код в студию!
Название: Re: Как читать Enter'ы? Отправлено: PulSar.CE3194694 от Август 01, 2011, 15:33 Код: void Parser::binaryParser(QDomNode node) Название: Re: Как читать Enter'ы? Отправлено: Странник от Август 01, 2011, 15:47 где-то вы врете..а преобразование из Base64 где? попробуйте:
Код: void Parser::binaryParser(QDomNode node) Название: Re: Как читать Enter'ы? Отправлено: PulSar.CE3194694 от Август 01, 2011, 16:24 Спасибо, но дело не совсем в этом)
Я извлекаю данные из тэга таким образом: node.firstChild().toText().data(). Так вот если эту инструкцию в qDebug() отправить, то в консоли будет пустая строка. Проблема не в записи в массив, а в извлечении текста картинки из xml документа. Название: Re: Как читать Enter'ы? Отправлено: Странник от Август 01, 2011, 17:04 node.toElement().text() что возвращает?
Название: Re: Как читать Enter'ы? Отправлено: PulSar.CE3194694 от Август 01, 2011, 17:23 Ничего не возвращает. В консоли ничего не появляется, будто qDebug() и вовсе не написан.
Ну вот Вы попробуйте открыть этот бинарник (чтобы в консоли цифры-буквы появились). Название: Re: Как читать Enter'ы? Отправлено: kambala от Август 01, 2011, 17:47 а то, что тег заканчивается на <binary> (без слеша) - так и должно быть или опечатка в посте?
Название: Re: Как читать Enter'ы? Отправлено: Странник от Август 01, 2011, 17:48 опечатка, но работает в любом случае (Qt 4.7.3, Windows). уверены, что правильно парсите?
Код: QFile file(QString("test.xml")); p.s. ваш код у меня тоже работает. Название: Re: Как читать Enter'ы? Отправлено: SeverusSnape от Август 02, 2011, 09:35 Удалите символ "\n" как вариант
Название: Re: Как читать Enter'ы? Отправлено: PulSar.CE3194694 от Август 02, 2011, 09:57 Все, получилось! Странно, чудеса...
Название: Re: Как читать Enter'ы? Отправлено: Странник от Август 02, 2011, 10:09 Удалите символ "\n" как вариант он здесь точно ни при чем. xml-парсеру не мешает, преобразованию из base64 тоже.Название: Re: Как читать Enter'ы? Отправлено: SeverusSnape от Август 02, 2011, 12:35 Все, получилось! Странно, чудеса... Каким образом, если не секрет? Название: Re: Как читать Enter'ы? Отправлено: PulSar.CE3194694 от Август 02, 2011, 15:02 Не знаю... Код отсюда скопировал, открыл, получилось. Открыл настоящие книги с бинарями - тоже поучилось.
|