Чтение специальных символов из XML во флэш-памяти - PullRequest
1 голос
/ 26 мая 2011

У меня есть php-файл, который генерирует xml, php-файл:

<head> 
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
</head>
<?php
...
$directorio1 = utf8_encode($directorio);
$dir1 = utf8_encode($dir);
$string = "<nombre>$dir1$directorio1</nombre>\n";
$write = fputs($fp, $string);
...?>

xml, сгенерированный со следующей структурой:

<?xml version="1.0" encoding="utf-8"?>
<elementos>
<elemento>
<nombre>PROYECTOS/VIVIENDAS/Arturo Soria/P9120205.JPG</nombre>
<id>0</id>
<tam>376</tam>
</elemento>
...
<elemento>
<nombre>SHOWROOM/DISEÑOS PROPIOS/8099 entera(2).jpg</nombre>
<id>34</id>
<tam>156</tam>
</elemento>
</elementos>

В Flash CS5 я пытаюсь прочитать изагрузка из тега:

var ldr:Loader = new Loader();
ldr.load(new URLRequest(decodeURIComponent(nombre)));

И не находит файл для элемента, содержащего С.

Я также пробовал следующее:

ldr.load(new URLRequest(escape(nombre)));

ldr.load(new URLRequest(unescape(nombre)));

ldr.load(new URLRequest(nombre));

безуспешно.

Я также пытался изменить кодировку XML:

<?xml version="1.0" encoding="iso-8859-1"?>

Но все равно не работает.Кто-нибудь знает, что я могу сделать, чтобы решить эту проблему?

1 Ответ

0 голосов
/ 27 мая 2011

Это определенно проблема кодирования.Вы должны убедиться, что ваш результирующий XML правильно отформатирован.

Кроме того, вы должны изменить свой тег "nombre", чтобы его текст находился внутри поля CDATA, иначе вы можете получить недопустимые символы в вашем файле и получитьошибка при попытке разобрать его.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...