Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Поиск рулит! Сообщения за день Все разделы прочитаны
 

Вернуться   Форум Flasher.ru > Flash > ActionScript 3.0

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 25.03.2008, 18:35
Obi вне форума Посмотреть профиль Отправить личное сообщение для Obi Найти все сообщения от Obi
  № 1  
Ответить с цитированием
Obi
 
Аватар для Obi

Регистрация: Nov 2007
Адрес: Moscow
Сообщений: 566
По умолчанию compress и uncompress в ByteArray

Вот этот кусок замечательно работает:
Код:
byteArray = myBitmap.getPixels(rect);
byteArray.compress();
trace(byteArray);
byteArray.uncompress();
trace(byteArray);
А этот выдает ошибку 'Error #2058: There was an error decompressing the data.' :
Код:
var binaryData:ByteArray = new ByteArray();
binaryData.writeMultiByte(String(rootXmlList.data.child(i)), "UTF-8"); 
trace(binaryData);
binaryData.uncompress();
trace(binaryData);
Собственно разница между ними только в том, что во втором варианте я БайтМассив получаю через ХМЛ. Подскажите пожалуйста, где может быть зарыта собака?


Последний раз редактировалось Obi; 25.03.2008 в 18:38.
Старый 25.03.2008, 18:39
Mr. Fixit вне форума Посмотреть профиль Найти все сообщения от Mr. Fixit
  № 2  
Ответить с цитированием
Mr. Fixit
Banned
[+1 08.05.08]
[+4 14.04.08]
[+1.3 02.05.08]

Регистрация: Oct 2006
Адрес: кагбэ Киеф!!1
Сообщений: 1,473
Код:
String(rootXmlList.data.child(i))
а что в трейс выводит?

Старый 25.03.2008, 18:41
Obi вне форума Посмотреть профиль Отправить личное сообщение для Obi Найти все сообщения от Obi
  № 3  
Ответить с цитированием
Obi
 
Аватар для Obi

Регистрация: Nov 2007
Адрес: Moscow
Сообщений: 566
БайтМассив выводит. Программа останавливается после попытки выполнения binaryData.uncompress(); До этого все трейсится замечательно.

Старый 25.03.2008, 18:48
max_oil вне форума Посмотреть профиль Отправить личное сообщение для max_oil Найти все сообщения от max_oil
  № 4  
Ответить с цитированием
max_oil

Регистрация: Mar 2008
Сообщений: 57
Цитата:
Сообщение от Obi
Вот этот кусок замечательно работает:
Код:
byteArray = myBitmap.getPixels(rect);
byteArray.compress();
trace(byteArray);
byteArray.uncompress();
trace(byteArray);
А этот выдает ошибку 'Error #2058: There was an error decompressing the data.' :
Код:
var binaryData:ByteArray = new ByteArray();
binaryData.writeMultiByte(String(rootXmlList.data.child(i)), "UTF-8"); 
trace(binaryData);
binaryData.uncompress();
trace(binaryData);
Собственно разница между ними только в том, что во втором варианте я БайтМассив получаю через ХМЛ. Подскажите пожалуйста, где может быть зарыта собака?
ошибка может быть если к rootXmlList.data.child(i) до этого не был применен compress()

Старый 25.03.2008, 18:49
BlooDHounD вне форума Посмотреть профиль Отправить личное сообщение для BlooDHounD Посетить домашнюю страницу BlooDHounD Найти все сообщения от BlooDHounD
  № 5  
Ответить с цитированием
BlooDHounD
стервочка (я мужик)
 
Аватар для BlooDHounD

блогер
Регистрация: Mar 2004
Адрес: Борисов
Сообщений: 3,161
Записей в блоге: 22
а собственно почему он должен работать? в чём его смысл-то ?
если применить compress, то не распарсит XML, так как появятся нулевые байты, которых в строке быть не может.

Старый 25.03.2008, 18:52
Obi вне форума Посмотреть профиль Отправить личное сообщение для Obi Найти все сообщения от Obi
  № 6  
Ответить с цитированием
Obi
 
Аватар для Obi

Регистрация: Nov 2007
Адрес: Moscow
Сообщений: 566
Цитата:
Сообщение от max_oil
ошибка может быть если к rootXmlList.data.child(i) до этого не был применен compress()
В ХМЛ уже сжатый вариант. Во флеше мне его нужно декомпрессить, и слепить из него БитмапДату.

Старый 25.03.2008, 18:56
max_oil вне форума Посмотреть профиль Отправить личное сообщение для max_oil Найти все сообщения от max_oil
  № 7  
Ответить с цитированием
max_oil

Регистрация: Mar 2008
Сообщений: 57
Тогда должно работать.. Просто бывают разные варианты сжатия..
функция compress() (и uncompress() соответственно) принимает аргумент стиля сжатия.
Ты сам компресил или у тебя готовая база?

Старый 25.03.2008, 18:59
Obi вне форума Посмотреть профиль Отправить личное сообщение для Obi Найти все сообщения от Obi
  № 8  
Ответить с цитированием
Obi
 
Аватар для Obi

Регистрация: Nov 2007
Адрес: Moscow
Сообщений: 566
Во флеше создается БитмапДата. Из нее составляется БайтАррай, сжимается и засовывается в mysql. Далее сервер вынимает значение из базы, и отдает флешу. Задача состоит в том, чтобы получить исходную БитмапДату.

Старый 25.03.2008, 19:22
BlooDHounD вне форума Посмотреть профиль Отправить личное сообщение для BlooDHounD Посетить домашнюю страницу BlooDHounD Найти все сообщения от BlooDHounD
  № 9  
Ответить с цитированием
BlooDHounD
стервочка (я мужик)
 
Аватар для BlooDHounD

блогер
Регистрация: Mar 2004
Адрес: Борисов
Сообщений: 3,161
Записей в блоге: 22
ну так пускай отдаёт в качестве бинарника. зачем извращения с XML ? скорее всего там и ошибка.

Старый 25.03.2008, 19:53
Obi вне форума Посмотреть профиль Отправить личное сообщение для Obi Найти все сообщения от Obi
  № 10  
Ответить с цитированием
Obi
 
Аватар для Obi

Регистрация: Nov 2007
Адрес: Moscow
Сообщений: 566
Записей-то в базе много, и бинарников много, а загрузить нужно одним махом... Кроме хмл, выходов не вижу.

Создать новую тему Ответ Часовой пояс GMT +4, время: 17:55.
Быстрый переход
  « Предыдущая тема | Следующая тема »  
Опции темы
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


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


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