Форум 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=79528)

4thDimention 10.05.2006 15:13

Трабл с XML
 
Доброго времени суток!
Помогите советом. Суть проблемы в том, что когда делаю вот так:
Код:

var xml_doc:XML = new XML("<razdel1><punkt1 active='true' val='йцук'/><punkt2 active='true' val='йцук'/><punkt3 active='true' val='йцук'/><punkt4 active='true' val='йцук'/></razdel1>");
var ch_nodes:Array = xml_doc.childNodes[0].childNodes;
trace(ch_nodes.length)
for (var i = 0; i<ch_nodes.length; i++)
{
        trace(ch_nodes[i].nodeName);
}

все работает замечательно... но когда же пытаюсь грузить XML из файла вот так:
Код:

var xml_doc:XML = new XML();
xml_doc.load("menu1.xml");
xml_doc.onLoad = function():Void
{
        trace("Yahoo!!!");
};

в файле menu1.xml - <razdel1><punkt1 active='true' val='йуцк'/><punkt2 active='true' val='йцук'/><punkt3 active='true' val='йцук'/><punkt4 active='true' val='йцук'/></razdel1>
флешка не видит childNodes совсем...
З.Ы. заранее извиняюсь если подобная тема уже обсуждалась, но воспользоваться поиском нет возможности ввиду медленного институтского инета :(

Samodelkin 10.05.2006 15:39

Сделай не трэйс("Yahoo") а трэйс (xml_doc) и скажи что получилось.

4thDimention 10.05.2006 15:48

получилось вот что:
<?xml version="1.0" encoding="windows-1251"?>
<razdel1>
<punkt1 active="true" val="1. ������������" />
</razdel1>
сделал еще trace(xml_doc.childNodes.hasChildNodes()); выводит undefined

Reijii 10.05.2006 15:53

попробуй так:

Код:

var xml_doc:XML = new XML();
xml_doc.onLoad = function(success:Boolean):Void
{
    if (success)
    {
        trace(xml_doc);
    }
}
xml_doc.load("menu1.xml");


Friday13 10.05.2006 16:11

Сохрани xml файл в блокноте как UTF

samurays 10.05.2006 19:43

Попробуь сверху вписать
System.useCodepage = true;

iNils 10.05.2006 19:51

Цитата:

Сообщение от samurays
Попробуь сверху вписать
System.useCodepage = true;

Не надо учить плохому. Надо учить UTF-8.

bbexp 10.05.2006 22:50

Про System.useCodepage = true; вообще забыть надо )))

Еще, не знаю умышленно или нет, но пропущено
xml_doc.ignoreWhite = true;

artcraft 10.05.2006 23:13

Цитата:

Сообщение от 4thDimention
получилось вот что:
<?xml version="1.0" encoding="windows-1251"?>
<razdel1>
<punkt1 active="true" val="1. ������������" />
</razdel1>
сделал еще trace(xml_doc.childNodes.hasChildNodes()); выводит undefined

попробуй так: trace(xml_doc.firstChild.hasChildNodes());

MyXus 11.05.2006 21:10

А почему нельзя system.codePage ?
у меня вот заказчик просит кодировку win1251 в xml.
И с указанным флажком всё работает..
м?

Antares 12.05.2006 00:33

Да можно, можно. Все можно. Только есть best practices, а есть одноплатформенная херня.

bbexp 12.05.2006 12:38

MyXus, неправильный заказчик. 8) лень галочку поставить при сохранении?

Сам посуди - флеш работает с юникодом, как с родной кодировкой. (можно даже переменные по русски назвать)
Юникод - кодировка универсальная.
Зачем урезать свои возможности?

Я как то раньше по старинке пользовался этой ерундой. И вот теперь в сети висит сайтец, который в новостях мне кажет квадраты сплошные - плеер обновился - и все - кодировки в хлам. Писался на 6-й версии - тогда все было ок, а теперь - такая ерунда. А дойдут руки - поменяю все под юникод - и все снова будет ок.

etc 12.05.2006 13:30

На шестёрке уже был хлам. На пятёрке всё ОК было...


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

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