Просмотр полной версии : Flash + XML
pasha111
02.11.2007, 15:47
Моя задача состоит в чтении xml и отображении прочитаной информации.
Все работало отлично, но потом мне попался символ "é". Код этого символа - é
Проблема: При чтении этого символа - все слово, в котором содержится этот символ, заменяется квадратиком. (Етот квадратик появляется еще в Стринге, не только в ТекстФилде). Как этого можно избежать?
Пробывал руками в xml менять этот символ на его код - все работает отлично. Но у меня больше тысячи xml + подобных символов может быть много....:confused:
на крайняк есть такая штука - автозамена называется
к примеру программа homesite умеет менять в указанной папке во всех файлах в ней один символ или последовательность символов на другие ...
тоже самое умеет dreamweaver и думаю еще не один десяток программ
pasha111, боюсь то что Kinsler предложил - единственный выход.
В UTF-8 XML сохранять надо.
Infectedcell
02.11.2007, 22:59
на крайняк есть такая штука - автозамена называется
к примеру программа homesite умеет менять в указанной папке во всех файлах в ней один символ или последовательность символов на другие ...
тоже самое умеет dreamweaver и думаю еще не один десяток программ
Угу, прав на 100%
Во всех программах, ctrl+H, заменить ВЕЗДЕ.
Ну а вообще,
определись сколько символов таких у тебя может быть (по максимуму),
и прежде чем вставлять в текстфилд, меняй эти символы программно, прямо в коде, это не сложно, если принаровится, я так заменял кавычки, скобки и прочую лабуду...
думаю в твоем случае тож можно попробовать (ANSCII коды то одни и теже, для одних и тех же символов)...
Ну и само собой, как отписал udaaff - UTF-8
Способ замены символа:
e.txt
<root>éСéлéоéвéоé</root>
var my_txt:TextField = createTextField("txt", 1, 20, 20, 200, 50);
my_txt.border = true;
var xml:XML = new XML();
xml.ignoreWhite = true;
xml.onLoad = function() {
var str:String = xml.firstChild.firstChild.nodeValue;
my_txt.text = replace(str, "é", ""); // Cлово
};
xml.load("e.txt");
function replace(src:String, sep:String, del:String):String {
return src.split(sep).join(del);
}
Работает на vBulletin ® версия 3.7.3. Copyright ©2000-2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Copyright © 1999-2008 Flasher.ru. All rights reserved.