Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 1.0/2.0 (http://www.flasher.ru/forum/forumdisplay.php?f=93)
-   -   Странный парсер XML (http://www.flasher.ru/forum/showthread.php?t=142258)

in4core 16.07.2010 14:24

Странный парсер XML
 
Получаем списочек друзьев XML из вконтакте.

Пример ( начало)
str =
Код:

<?xml version='1.0' encoding='utf-8'?><response list='true'> <user>  <uid>8311</uid>  <first_name>Aleksey</first_name>  <last_name>Souetov</last_name>  <photo_medium>http://cs9438.vkontakte.ru/u08311/b_4e3bd94d.jpg</photo_medium>  <online>0</online> </user> <user>  <uid>48114</uid>  <first_name>Gl</first_name>  <last_name>All</last_name>  <photo_medium>http://cs9653.vkontakte.ru/u48114/b_525adfad.jpg</photo_medium>  <online>0</online> </user> <user>  <uid>57693</uid>  <first_name>Koshkin</first_name>  <last_name>Spiel</last_name>  <photo_medium>http://cs729.vkontakte.ru/u57693/b_87f4c860.jpg</photo_medium>  <online>0</online> </user> </response>
Код AS1/AS2:

var xm = new XML(str.split("\n").join(""))
 
var x = xm.firstChild.childNodes;
 
trace(x);  /* 
 
 ,<user>  <uid>8311</uid>  <first_name>Aleksey</first_name>  <last_name>Souetov</last_name>  <photo_medium>http://cs9438.vkontakte.ru/u08311/b_4e3bd94d.jpg</photo_medium>  <online>0</online> </user>, ,<user>  <uid>48114</uid>  <first_name>Gl</first_name>  <last_name>All</last_name>  <photo_medium>http://cs9653.vkontakte.ru/u48114/b_525adfad.jpg</photo_medium>  <online>0</online> </user>, , <user>......................  */

Откуда взялись запятые? не могу понять!!! Это первый вопрос

Второй вопрос почему:
Код AS1/AS2:

trace(x.split(",").join("")) // undefined


etc 16.07.2010 14:36

childNodes какой тип имеет?

in4core 16.07.2010 14:50

Это на какой вопрос ?

Добавлено через 1 минуту
еслми об этом то :

Код AS1/AS2:

trace(typeof(xm.firstChild.childNodes))

== object

etc 16.07.2010 14:58

Вообще-то Array.

in4core 16.07.2010 15:06

Ну Array это и есть по сути инстанс объкекта. Только это к чему? Что делать с запятыми ? почему такой xml получается непонятный? как его правильно парсить и т.д. не могу понять, первый раз с xml проблема за всю жизнь

Хемуль 16.07.2010 15:08

2 in4core:
Вы что, никогда не трейсили массивы? ^_^
Запятые разделяют элементы массива для наглядности, в результате работы trace.

etc 16.07.2010 15:10

Угу, а элементами массива являются XMLNode. И непонятно, зачем вы пытаетесь вызвать split у массива, у него нет такого метода, это метод String-а.

in4core 16.07.2010 15:11

Это все понятно. Вопрос был как верно парсить такой XML . Чтобы в итоге push в массивы nodeValue

etc 16.07.2010 15:12

Откройте в кои-то веки доку по childNodes.

in4core 16.07.2010 15:22

Разобрался. Правда убить их мало за пробелы оставляемые между нодами. пришлось чистить


Часовой пояс GMT +4, время: 07:52.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.