0
На рассмотрении
Как изменить кодировку XML-файла на UFT-8?
Здравствуйте.
Делаю выгрузку в Росбанк в формате XML.
Пролог файла-образца ( s_Росбанк_реестр.xml ) выглядит так:
<?xml version="1.0" encoding="UTF-8"?>
Посмотрел кодировку файла. Действительно - UTF-8.
КЗ сохраняет файл в кодировке windows-1251, и сообщает об этом в прологе:
<?xml version="1.0" encoding="windows-1251"?>
Как сохранить файл в кодировке UTF-8 и сделать запись об этом в прологе?
Сервис поддержки клиентов работает на платформе UserEcho
Добрый день.
Пример можно взять в ..SCRIPT\forms\egisz.S или PilotFSS.S
Спасибо
В скрипт добавил:
В скрипте поменял:
На выходе получил XML-файл:
Т.е. в прологе стало всё как надо.
Теперь пытаюсь поменять кодировку корневого элемента:
При формировании файла получаю ошибку:
Что делаю не так?
Скрипт у вас в какой кодировке?
Можете его выложить..
в toUTF8() должна прилетать строка в дос кодировке (866)
ANSI
Это немного поправленный sbr_xml.S (правил только часть, касающуюся структуры XML-файла).
Уже понял. Не смог поправить.
тогда надо так:
или поправить toUTF8 так:
Так уже пробовал. Не помогло.
Вот скрипт: RosBank_xml.S
Скрипт у вас в ДОС кодировке.
Поэтому AnsiToOem надо убрать
Да я уже как только не пробовал. Всё равно, если присутствуют русские буквы, получаю ошибку:
Странно... Notepad++ действитено показывает ДОС-кодировку, а вот блокнот - ANSI:
Попробовал определить вордом. Тоже ДОС. Вывод - блокнот врёт.
Ну вообщем так..
Пример кода (скрипт в DOS кодировке):
При использовании метода SaveFileXML файл сохраняется в кодировке UTF-8, но все теги в нем, почему-то, выстраиваются в одну строку:
Ну он же не Fine :)
как говорится: "вам шашечки или ехать?"..
Я правильно понимаю, что в XML расположение тегов не играет роли? Ну в смысле - что "в стобик", что "в строку" - однофигственно?
йес, для "машины" все равно..
даже порядок не важен, главное чтобы вложенность соблюдалась..
Ещё раз спасибо
Выложите , пожалуйста, то что получится.
Для потомков..
ok