powered by simpleCommunicator - 2.0.49     © 2025 Programmizd 02
Форумы / XML, XSL, XPath, XQuery [игнор отключен] [закрыт для гостей] / В какой кодировке пишется пролог?
8 сообщений из 8, страница 1 из 1
В какой кодировке пишется пролог?
    #39222580
*
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
*
Гость
Документы искал и не нашел.

Собствено вопрос в следующем. Нужно разбирать файлы,
содержащие xml-заголовок известной структуры и следующие за ним
двоичные данные. И нужно их отделить друг от друга.

Предполагается искать в массиве байт второе вхождение самого внешнего тега (строку "ВНЕШНИЙ_ТЕГ>", байтовое представление которой зависит от кодировки). Если есть пролог, кодировка будет читаться из него, но в какой кодировке записан он сам?
Допустимо ли считать, что при отсутствии Byte Order Mark его кодировка байтовая?
...
Рейтинг: 0 / 0
В какой кодировке пишется пролог?
    #39222699
Фотография _Vasilisk_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
В какой кодировке пишется пролог?
    #39222751
*
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
*
Гость
Спасибо, это я видел, но, возможно не сделал всех выводов.

Может это и искусственная ситуация, но правильно ли я понимаю, что по по первым символам определяется кодировка пролога, а кодировка самого xml - по encoding?

Сделал файл с прологом в кодировке UTF-16 (с BOM = 0xFF 0xFE и без него) и содержимым в windows-1251:
Код: xml
1.
<?xml version="1.0" encoding="windows-1251"?><A>AФ</A>


С <A> начинается байтовая кодировка.

FireFox ругается (XML Parsing Error: not well-formed),
xerces-c нет.
...
Рейтинг: 0 / 0
В какой кодировке пишется пролог?
    #39222773
Фотография _Vasilisk_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
*Может это и искусственная ситуация, но правильно ли я понимаю, что по по первым символам определяется кодировка пролога, а кодировка самого xml - по encoding?Нет. По первым символам можно определить класс кодировок. А потом на основании этого класса можно начинать читать пролог. И если пролог найден, то доуточнить кодировку.

Если пролог отсутствует, то кодировка XML - UTF-8

Если кодировка XML в (отсутствующем) прологе, не совпадает с предолагаемым классом кодировок, то парсинг прекращается с ошибкой
*кодировка самого xml - по encoding?это как?
*Сделал файл с прологом в кодировке UTF-16 (с BOM = 0xFF 0xFE и без него) и содержимым в windows-1251:Что за бред? Содержимое одного XML-файла не может біть в разных кодировках
...
Рейтинг: 0 / 0
В какой кодировке пишется пролог?
    #39222789
*
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
*
Гость
А я и не говорил, что это нормально. Но тогда почему анализатор не ругается на encoding?
...
Рейтинг: 0 / 0
В какой кодировке пишется пролог?
    #39222799
Фотография _Vasilisk_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
*Но тогда почему анализатор не ругается на encoding?Почему он должен ругаться?
...
Рейтинг: 0 / 0
В какой кодировке пишется пролог?
    #39222818
*
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
*
Гость
VasiliskНет. По первым символам можно определить класс кодировок. А потом на основании этого класса можно начинать читать пролог. И если пролог найден, то доуточнить кодировку.
По идее наличие BOM и указание байтовой кодировки windows-1251 противоречат друг другу. Но xerces-с похоже выполняет переключение.

Его исходный код есть, но так сразу разобраться не получилось.
...
Рейтинг: 0 / 0
В какой кодировке пишется пролог?
    #39223449
Фотография _Vasilisk_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
*По идее наличие BOM и указание байтовой кодировки windows-1251 противоречат друг другуИменно!
*Но xerces-с похоже выполняет переключение.Есть такой абзац
авторF.2 Priorities in the Presence of External Encoding Information

The second possible case occurs when the XML entity is accompanied by encoding information, as in some file systems and some network protocols. When multiple sources of information are available, their relative priority and the preferred method of handling conflict should be specified as part of the higher-level protocol used to deliver XML . In particular, please refer to [IETF RFC 3023] or its successor, which defines the text/xml and application/xml MIME types and provides some useful guidance. In the interests of interoperability, however, the following rule is recommended.
...
Рейтинг: 0 / 0
8 сообщений из 8, страница 1 из 1
Форумы / XML, XSL, XPath, XQuery [игнор отключен] [закрыт для гостей] / В какой кодировке пишется пролог?
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]