powered by simpleCommunicator - 2.0.59     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / MS XML и ASP
6 сообщений из 6, страница 1 из 1
MS XML и ASP
    #32885216
RFT
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Человеки, подскажите пож. можно ли как-нибудь с помощью ASP почистить XML так, чтобы удалить из него абсолютно одинаковые узлы? Поясню задачу на примере(собственно, из-за чего это понадобилось): Экселевскую табличку сохраняю как XML и вижу, что стили описаны чуть ли ни для каждой ячейки!!! Т.е.:
<Style ss:ID="m43896388">
<Alignment ss:Horizontal="Left" ss:Vertical="Center"/>
<Borders>
<Border ss:Position="Bottom" ss:LineStyle="Continuous" ss:Weight="1"/>
<Border ss:Position="Left" ss:LineStyle="Continuous" ss:Weight="1"/>
<Border ss:Position="Right" ss:LineStyle="Continuous" ss:Weight="1"/>
<Border ss:Position="Top" ss:LineStyle="Continuous" ss:Weight="1"/>
</Borders>
<Font ss:FontName="Tahoma" x:CharSet="204" x:Family="Swiss" ss:Size="22"/>
<Interior/>
<NumberFormat/>
</Style>
<Style ss:ID="m43896398">
<Alignment ss:Horizontal="Left" ss:Vertical="Center"/>
<Borders>
<Border ss:Position="Bottom" ss:LineStyle="Continuous" ss:Weight="1"/>
<Border ss:Position="Left" ss:LineStyle="Continuous" ss:Weight="1"/>
<Border ss:Position="Right" ss:LineStyle="Continuous" ss:Weight="1"/>
<Border ss:Position="Top" ss:LineStyle="Continuous" ss:Weight="1"/>
</Borders>
<Font ss:FontName="Tahoma" x:CharSet="204" x:Family="Swiss" ss:Size="22"/>
<Interior/>
<NumberFormat/>
</Style>

ну и т.д. Т.е. они абсолютно одинаковые, различие только в ID. И, соотв., из самой таблицы каждая ячейка ссылается на свой стиль.

Мне надо почистить эти самые дублирующиеся стили, чтобы к примеру всемто 100 их было 1.

Или на крайняк хотя бы вывести списком ID шки этих стилей, которые являются полными дубликатами.

Есть у кого идеи?
...
Рейтинг: 0 / 0
MS XML и ASP
    #32885227
JRM
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
JRM
Гость
Имхо, при такой постановке вопроса проще сделать свои механизмы переноса данных из Excel в XML ;)

З.Ы. Были где-то в инете проги, которые позволяли из html, сгенеренного MS Office, выкидывать кучу хлама... Вот только смогут ли они тоже самое сделать с XML - не знаю.
...
Рейтинг: 0 / 0
MS XML и ASP
    #32885249
RFT
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
JRMИмхо, при такой постановке вопроса проще сделать свои механизмы переноса данных из Excel в XML ;)
К сожалению, с экселевской структурой не сильно знаком. А так - с радостью бы, поскольку это не единичный случай и требоваться будет еще долго. JRM
З.Ы. Были где-то в инете проги, которые позволяли из html, сгенеренного MS Office, выкидывать кучу хлама... Вот только смогут ли они тоже самое сделать с XML - не знаю.

Искал уже три дня подряд. Безуспешно:-( Хотя с поиском в инете проблем не испытывал уже давно.
...
Рейтинг: 0 / 0
MS XML и ASP
    #32885399
Partisan M
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В чём вопрос-то (почему читатель должен гадать):

- как загрузить объект MS XML в ASP
- или как загрузить XML в этот объект
- или как преобразовать XML с помощью этого объекта в нужный вид?

на 3й вариант сразу отвечаю: надо или создать XSLT скрипт, делающий нужное преобразование (что просто, если знать XSLT) или применить XML DOM (что просто, если знать XML DOM). Если не знаешь нм XSLT, ни XML DOM, то при пвботе с XML возникает большая проблема.
...
Рейтинг: 0 / 0
MS XML и ASP
    #32885428
RFT
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вот проблема-то и возникла... С XML не работал вообще. Книжку читал пару лет назат, остались только образные представления о нет.

Вопрос в том, чтобы сравнить все вложенные теги и атрибуты тега STYLE и вывести список тех стайлов, которые не уникальны. И по возможности сразу поудалять их. Ну а для совсем полного счастья, позаменять их в тегах CELL на первый, который останется уникальным среди равных себе. Но это могу и ручками первое время.

Собственно - ASP не столь принципиален. Приму любые варианты. Особенно, если достаточно полно опишете, чтобы догнать.
...
Рейтинг: 0 / 0
MS XML и ASP
    #32885977
Partisan M
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
можно или

1. В Excel создать на VBA функцию, выводящую данные в нужном xml формате просто как текст.
2. или данный xml разбирать как текст, при этом работа будет значительно проще, если использовать регулярные выражения (в VBScript - объект RegExp, см. док. по Windows Scripting. Но с непривычки синтаксис регулярных выражений может вызвать затруднения, хотя на самом деле он прост. Если не регулярные выражения, то строковые функции (что хуже).

- найти фрагменты <Style ... </Style>, для каждого позицию начала в тексте, ИД, содержимое.
-каждый помещать в объект Dictionary (см. док. по Windows Scripting) в виде пар ключ-значение, где ключ - содержимое, значение - массив остального. У Dictionary есть метод Exists проверки, что ключ уже занесён. Тогда извлечь его значение из словаря и сравнить содержимым вновь найденного элемента. Если совпадают, то новый элемент лишний и его можно убрать. В конце получаем список позиций и длин убираемых элементов и удаляем их строковой функцией от конца текста к началу.
...
Рейтинг: 0 / 0
6 сообщений из 6, страница 1 из 1
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / MS XML и ASP
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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