Просмотр полной версии : загрузка массива из тхт
есть файл тхт:
massiv = ["0", "1", "и так далее"]
в файле он не один. там еще 3 массива и 6 переменных все разделены & как и надо.
но почему то это не грузится loadVariavles....
все делаю правильно, проверял без массивов - работает.
может массивы как то по особому грузить надо? я просто раньше с этим не сталкивался (максимум - приходилось грузить переменные из тхт)
помогите, объясните
[afr смотрел, там нету]
Заранее спасибо!
Самый лучший вариант в твоей ситуации это использовать xml , грузить его во флешу и там уже лепить массивы ...
Psycho Tiger
29.06.2005, 12:07
Грузи просто переменные и цифру всех переменных.
Пример:
for (i=0; i<=totalmass; i++){
newmassiv[i]=_root["mass"+i];
}
Что то вроде етого
Жень Шень
29.06.2005, 12:39
Привет!
Загрузи строку разделенную определенным символом на подстроки и воспользуйся String.split
Метод split разбивает объект String на подстроки там, где встречается указанный символ и возвращает массив подстрок.
Bright, кто ж так из текстового файлы грузит, да еще и массивы...:) ты бы еще в текстовом файле гоутуЕндПлей написал...:)
вот пример двумерного масива, удалишь лишнее...:)
загоняешь в текстовик массив в таком виде:
--------------------------------
info=1 | images/irbis/basic/001.jpg | images/irbis/swf/text1.swf;
1 | images/irbis/basic/002.jpg | images/irbis/swf/text1.swf;
1 | images/irbis/basic/003.jpg | images/irbis/swf/text1.swf;
2 | images/irbis/lux_classica/0001.jpg | images/irbis/swf/lux_klassika.swf
;
--------------------------------
в мувике грузишь и разбиваешь на флешный двумерный массив:
--------------------------------
arrayLoad = new LoadVars();
arrayLoad.load("irbis.txt");
arrayLoad.onLoad = build_array;
function build_array() {
arrayrow = arrayLoad.info.split(";\r\n"); //сначало дербаним по строкам
for (i=0; i<arrayrow.length; i++) {
arrayrow[i] = arrayrow[i].split(" | "); //потом по палке:)
}
for (i=0; i<arrayrow.length; i++) {
trace(arrayrow[i]);
}
};
--------------------------------
простонько, да...?:)
Опять вопрос по загрузке переменных, вернее по доступу к ним.
Сорри, в поиске именно такого случая не нашёл...
LoadVariables("/test.htm","");
( в файле находится
s_str=blablabla)
Загружаю так, переменная становится видна (через Ctrl+Alt+V) как
_level0.s_str="blablabla";
а как дальше её юзать?
тут же ниже пишу в скрипте
trace(_level0.s_str) - выдаёт undefined
var s: string;
s = _level0.s_str;
trace (s) - тоже выдаёт undefined :(((
Оценил Ваш искромётный юмор (прусь, можно сказать), но хотелось бы ответа по существу.
Конечно же я пробовал и _root.s_str и _global.s_str
- всё равно undefined...
onLoad, onData ни о чем не говорит ?
arrayLoad.load("test.htm");
arrayLoad.onLoad = build_array;
Не работает!
arrayLoad.load("test.htm");
arrayLoad.onData = build_array;
Не работает!
arrayLoad.load("test.htm");
if(arrayLoad.loaded ) build_array;
А вот так заработало, ура!
документация и хелп в общем-то, конечно, писаны идиотами для нубов, но и тебе стоит снизойти до прочтения...
Nox Noctis
24.01.2006, 16:12
а как дальше её юзать?
тут же ниже пишу в скрипте
trace(_level0.s_str) - выдаёт undefined
ошибка выделена красным цветом.
ты грузишь переменные. это НЕ происходит мгновенно.
но при этом ты "тут же ниже пишешь в скрипте" и почему-то надеешься, что переменная к этому моменту уже появится.
через ктрл+альт+в ты её видишь тогда, когда она уже загрузилась, всё верно. а чтобы программно её использовать, тебе нужно
1. узнать, что загрузка закончилась
2. только после этого пользоваться загруженным
немногословный Skubent тебе как раз намекнул на пункт 1.
Благодарю, теперь понятно!
Меня как раз сбило с толку то, что через ctrl+alt+V она видна.
Работает на vBulletin ® версия 3.7.3. Copyright ©2000-2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Copyright © 1999-2008 Flasher.ru. All rights reserved.