![]() |
|
||||||||||
|
|
|
|||||
|
На PHP функция file_get_content() обеспечивает открытие файла с url-адреса, его чтение и закрытие. Есть ли подобное на Flash? Если да, то подскажите, в какую сторону раскручивать. Заранее спасибо.
И вот маленький вопрос. Будет ли это работать с файла EXE flash'a? Еще раз спасибо.
__________________
Надо сменить подпись... |
|
|||||
|
Если на сервере, то флешу без сторонней помощи не обойтись (та же пыха подойдёт). Если на локальной машине, то только с использованием AIR или MDM Zinc
__________________
Дети не должны знать о своих родителях |
|
|||||
|
хм... просто некоторые хосты блокируют эти функции... они как бы платные... А вот кстати, я заметил такую штуку, что EXE файлы флеша получают данные с внешнего сайта.... Вот только у меня большой текстовый файл. Поэтому и хотелось бы узнать, как получить содержимое страницы, а потом её обрабатывать
Добавлено через 10 минут Вот нашел на этом форуме скрипт: txt.text = "Загружаю данные..."; var my_lv:LoadVars = new LoadVars(); my_lv.onLoad = function(success:Boolean){ if (success){ txt.text = this.toString(); } else { trace("Ошибка в загрузке / разборе результирующей строки."); } } my_lv.load("http://www.plazmaburst2.com/?a=&s=7&ac=endocrinolog"); Добавлено через 19 минут И есть предел считывания символов этой функции? Потому что файл прочелся не полностью
__________________
Надо сменить подпись... |
|
|||||
|
Сервер должен отсылать в кодировке utf-8, флеша с ним работает. Если возможности отредактировать файл на сервере нет, тогда сами декодируйте кракозябру в utf-8. Вот я нашол небольшую функцию, правда не все сиволы чтоли декодирует:
function encode(string) { var utftext = ""; for (var n = 0; n < string.length; n++) { var c = string.charCodeAt(n); if (c < 128) { utftext += String.fromCharCode(c); } else if((c > 127) && (c < 2048)) { utftext += String.fromCharCode((c >> 6) | 192); utftext += String.fromCharCode((c & 63) | 128); } else { utftext += String.fromCharCode((c >> 12) | 224); utftext += String.fromCharCode(((c >> 6) & 63) | 128); utftext += String.fromCharCode((c & 63) | 128); } } trace(utftext); }
__________________
Дети не должны знать о своих родителях |
|
|||||
|
Вот суммарный код:
txt.text = "Загружаю данные..."; var my_lv:LoadVars = new LoadVars(); my_lv.onLoad = function(success:Boolean){ if (success){ str = this.toString(); encode(str); txt.text = utftext; } else { txt.text = "Ошибка в загрузке / разборе результирующей строки."; } } my_lv.load("http://www.plazmaburst2.com/?a=&s=7&ac=endocrinolog"); function encode(string){ var utftext = ""; for (var n = 0; n < string.length; n++) { var c = string.charCodeAt(n); if (c < 128) { utftext += String.fromCharCode(c); } else if((c > 127) && (c < 2048)){ utftext += String.fromCharCode((c >> 6) | 192); utftext += String.fromCharCode((c & 63) | 128); } else { utftext += String.fromCharCode((c >> 12) | 224); utftext += String.fromCharCode(((c >> 6) & 63) | 128); utftext += String.fromCharCode((c & 63) | 128); } } //trace(utftext); } P.S. Вот отрывок получаемой крякозябры: Цитата:
__________________
Надо сменить подпись... |
|
|||||
|
НАШЕЛ СПОСОБ! Спасибо Вашему форуму ^_^
Даже декодинг не понадобился ![]() Вот скрипт, если кому надо: txt.text = "Загружаю данные..."; var loader:LoadVars = new LoadVars(); loader.onData = dataParser; loader.load("URL_АДРЕС"); function dataParser(datar:String):Void { txt.text = datar; } Добавлено через 6 минут Но если меня интересует всего пара строк из всей страницы, то их можно как-то извлечь?
__________________
Надо сменить подпись... |
![]() |
![]() |
Часовой пояс GMT +4, время: 00:46. |
|
|
« Предыдущая тема | Следующая тема » |
| Опции темы | |
| Опции просмотра | |
|
|