Название: Qt 4.1.1 => Qfile::readAll() Отправлено: bigirbis от Сентябрь 14, 2006, 10:13 Кто-нибудь под виндой сталкивался с проблемой:
Код: QFile f( "text.html" ) ??? В начале строки после такой операции появляются непечатаемые символы. :( Название: Qt 4.1.1 => Qfile::readAll() Отправлено: Admin от Сентябрь 14, 2006, 10:19 очень похоже на то что ты файл открываешь как бинарный
а надо как текстовый Название: Qt 4.1.1 => Qfile::readAll() Отправлено: KADABRA от Сентябрь 14, 2006, 10:30 Они появляются там потому, что они там действительно находятся.
В УТФ кодировке виндовские редакторы добавляют в начало файла какои-то идентификатор того, что это УТФ. Название: Qt 4.1.1 => Qfile::readAll() Отправлено: bigirbis от Сентябрь 14, 2006, 10:34 To KADABRA
Осилил. Думаю, ты прав. Пересохранил файл в локальную кодировку - все отлично. Название: Qt 4.1.1 => Qfile::readAll() Отправлено: noosooth от Сентябрь 14, 2006, 11:29 Это называется Byte Order Mark (BOM).
http://www.unicode.org/faq/utf_bom.html#BOM Для UTF8 это EF BB BF и, насколько я знаю, используется только в качестве сигнатуры, т.к. порядок байт в UTF8 вроде как всегда один и тот же. Наличие такой сигнатуры в UTF8 файле необязательно, посему приличный редактор должен по идее уметь работать и так и эдак. Насколько я понимаю, в виндовых редакторах эти кодировки обозначаются как: Unicode (UTF-8 with signature) Unicode (UTF-8 without signature) |