|
Вывод на ASP страницу содержимое XML-файла
|
|||
---|---|---|---|
#18+
Пытаюсь на ASP-странице вывести содержимое XML-файла. Пишу следующие <% Set myxml=Server.CreateObject("msxml") myxml.url = "http://localhost/pred.xml" Set root=myxml.root %> ...... <% =root.children.item(1)%> похоже вылетает на этой строке, Отсутствует свойство, используемое по умолчанию , наверное ругается на свойтво item, если ту строку заменить на <% =root.children.length %>, то ошибки нет, и выводит именно то количество записей. Было бы не плохо , какой нибудь простой пример для понимание. Данная область для меня нова, приходиться осваивать самому. Заранее спасибо ... |
|||
:
Нравится:
Не нравится:
|
|||
30.10.2003, 11:15 |
|
Вывод на ASP страницу содержимое XML-файла
|
|||
---|---|---|---|
#18+
У item действительно нет свойства "по умолчанию", поэтому используй Value или =root.children.item(1).OuterXML , можно InnerXML, в зависимости от того, что ты хочешь получить... Magnus ... |
|||
:
Нравится:
Не нравится:
|
|||
30.10.2003, 13:56 |
|
Вывод на ASP страницу содержимое XML-файла
|
|||
---|---|---|---|
#18+
А может ты хочешь чтоб это выглядело как XML? Тогда читай весь файл, выбирай необходимый кусок, и просто сохраняй его в поток Response.OutputStream. Magnus ... |
|||
:
Нравится:
Не нравится:
|
|||
30.10.2003, 14:00 |
|
Вывод на ASP страницу содержимое XML-файла
|
|||
---|---|---|---|
#18+
Большое спасибо, за ответ. Действительно сам не доглядел поставил строку <% =root.children.item(1).text%> и вроде бы работает, но проблемма сейчас в другом. Допустим имеем следующий XML-файл <?xml version = "1.0" encoding="Windows-1251" standalone="yes"?> <VFPData> <payers> <entsht>ЭНЕРГОПРОЕКТ</entsht> <entnmb>48046001573</entnmb> </payers> <payers> <entsht>ИНВЕСТИЦИОНЫЙ ФОНД</entsht> <entnmb>48052003007</entnmb> </payers> </VFPData> и команда <% =root.children.item(1).text%> выводит следующую строку ИНВЕСТИЦИОНЫЙ ФОНД 48052003007 , а вот как мне вывести по отдельности элементы <entsht>, <entnmb> что-то никак не получается. Манипулировал всяко разно елементами children и item, но все время выскакивает ошибка. Подскажите люди добрые, правильный синтаксис команды. Заранее спасибо. ... |
|||
:
Нравится:
Не нравится:
|
|||
31.10.2003, 05:38 |
|
Вывод на ASP страницу содержимое XML-файла
|
|||
---|---|---|---|
#18+
Если честно, способов это сделать существует несколько, вот парочка: 1.Ты выводил текст элемента players и естественн получило все сразу. А теперь получим его детей. root.children.item(1).FirstChild.Text root.children.item(1).FirstChild.NextSibling.Text Это конечно жутко топорно, просто чтобы ты понял смысл. Если уж говорить о хороших практиках то делаем так: xmlnode MYPayer=root.FirstChild; Xmlnode MyNode1=MYPayer.FirstChild.text; Xmlnode MyNode2=MyNode1.NextSibling.text; 2.Второй способ нравится мне лично гораздо больше. Используем XPath xmlNode=root.SelectSingleNode("descendant::payers::entsht") //для того чтобы закончить эту квери нужно знать какие данные у тебя на входе. ТЫ их выводишь всех? Или кого то конкретного? По индексу? Magnus ... |
|||
:
Нравится:
Не нравится:
|
|||
31.10.2003, 15:03 |
|
Вывод на ASP страницу содержимое XML-файла
|
|||
---|---|---|---|
#18+
Огромное спасибо, вроде бы разобрался. Хотелось бы только узнать, где найти описание всех свойств и методов объектов работы с XML в частности "MSXML.DOMDocument" . При создании объекта "MSXML" , он не поддерживал предложенных вами свойств FirstChild, NextSibling . ... |
|||
:
Нравится:
Не нравится:
|
|||
03.11.2003, 06:52 |
|
Вывод на ASP страницу содержимое XML-файла
|
|||
---|---|---|---|
#18+
Вообщето, все что я сам знаю о XML это из MSDN и личного опыта. Oleg_A67 писал:он не поддерживал предложенных вами свойств FirstChild, NextSibling. А вот это очень странно. Я сам ими пользуюсь, как раз сейчас. И все прекрасно работает. А как ты его создавал? В смысле обьект? Тебе нужно прочитать документ, так? Как сделал бы я: using System.Xml; ....... ....... XmlDocument MyDoc=new XmlDocument(); MyDoc.Load("c:\\mydocument.xml"); и далее по тексту. Погоди. Так у тебя не ASP.NET? Просто ASP? С VBScript? Там чуть по-другому. Сейчас по рукой нет. Посмотри в МСДН иерархию обьктов DOM, там есть описание всех методов и свойств. Magnus ... |
|||
:
Нравится:
Не нравится:
|
|||
03.11.2003, 13:57 |
|
Вывод на ASP страницу содержимое XML-файла
|
|||
---|---|---|---|
#18+
Это точно подмечено, имею просто ASP c VBScript. Сейчас выкручиваюсь следующим образом, при помощи Visual FoxPro 7. В командном окне пишу следующее oXML = CreateObject("MSXML.DOMDocument") , далее пишу oXML. и у меня появляется весь список свойств и методов данного объекта, с очень кратким описанием. Вот так и живем. Но чем дальше в лес, тем больше вопросов. ... |
|||
:
Нравится:
Не нравится:
|
|||
04.11.2003, 04:26 |
|
Вывод на ASP страницу содержимое XML-файла
|
|||
---|---|---|---|
#18+
Использовать фоксовый Intellisense для изучения объектной модели XML DOM - это круто... :-) (в том же фоксе есть такой Class Browser (меню Tools), в нем можно открыть любую библиотеку (dll,tlb,ocx) и проглядеть все то же самое, что дает Intellisense, только в более удобном "деревянном" виде, ИМХО... в вашем случае нужно будет открывать %WINDIR%/System32/msxml<N>.dll, где <N> - зависит от версии парсера, который в данный момент установлен на машине). Ну а для нормального изучения DOM - можно заглянуть и сюда... ... |
|||
:
Нравится:
Не нравится:
|
|||
04.11.2003, 11:15 |
|
|
start [/forum/topic.php?desktop=1&fid=18&tid=1396156]: |
0ms |
get settings: |
11ms |
get forum list: |
13ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
34ms |
get topic data: |
13ms |
get forum data: |
3ms |
get page messages: |
45ms |
get tp. blocked users: |
1ms |
others: | 15ms |
total: | 143ms |
0 / 0 |