Страницы: 1
RSS
Искажаются числа при открытии хмл файла, Открываю хмл файл экселем-длинные числа(например номер счета) отображаются неверно.
 
Пробовал открывать разными способами, доступными в Эксель. Лицевой счет(20 разрядное число) отображается примерно так: 4,08Е+19. При форматировании в текст или число последние 5 цифр меняются на 5 нулей. Разные интернет и онлайн конверторы не помогли, они вообще не открывают файл. Блокнотом все открывается и читается. Если это важно: файл получен официально от сбербанка. Спасибо.
 
Разбирайте файл скриптом, этим позициям ставьте всюду текстовый формат, сами значения берите как строку.
 
Цитата
Hugo написал:
Разбирайте файл скриптом
Игорь, можно и без скрипта, если прописать xsd-схему с определением типа данных для каждого узла и атрибута.
 
Учту, спасибо.
Но я в работе с xml не сталкиваюсь.
 
Простенький пример с xsd (давно не делал схем).
 
Спасибо за ответы. Я понял, что нужна  xsd -схема. Составлять ручками? Довольно сложно и долго, для меня. Найти в интернете? В самом исходном файле xml нет его описания. Нет ли какого нибудь другого способа? Или програмки. Потом бы можно было подправить.  Для примера прикрепляю исходный файл xml, естественно, персональные данные искажены.Спасибо.
Изменено: АИГ - 04.07.2017 08:53:23 (загрузил файл)
 
Цитата
АИГ написал:
Или програмки.
Готовой конкретно под структуру вашего xml, вряд ли. Либо писать на VBA, либо делать в Power Query.
Цитата
АИГ написал:
Я понял, что нужна  xsd -схема. Составлять ручками?
Ну, не обязательно полностью ручками. Если структура файла типовая, то
1. загружаете xml как есть.
2. выдёргиваете его схему
Код
ThisWorkbook.XmlMaps(1).Schemas(1).XML

3. создаёте файл xsd
4. для неверно определяемых типов данных по 1 пункту элементов прописываете текстовый тип type="xsd:string" или устанавливаете нужный.
5. сохраняете схему.
6. правите xml, прописывая ссылку на схему (как в примере).
7. импортируете в новый файл или просто открываете "правильный" xml.
Успехов.
Изменено: Андрей VG - 04.07.2017 13:41:43
 
Спасибо!!! Это здорово!!!
Страницы: 1
Наверх