Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   Flash Приложения: AIR, Zinc и тд. (http://www.flasher.ru/forum/forumdisplay.php?f=94)
-   -   Сохранение файла в AIR: мусорные байты (http://www.flasher.ru/forum/showthread.php?t=171529)

Crash512 17.11.2011 19:26

Сохранение файла в AIR: мусорные байты
 
Сохраняю XML-файл в AIR следующим образом

Код AS3:

var stream:FileStream = new FileStream();
stream.open(file, FileMode.WRITE);
stream.writeObject(xml);
stream.close();

После чего в начале получившегося файла обнаруживается 3-4 мусорных байта. Пытался лечить таким вот хаком:

Код AS3:

var bytes:ByteArray = new ByteArray();
bytes.writeObject(xml);
 
var stream:FileStream = new FileStream();
stream.open(file, FileMode.WRITE);
stream.writeBytes(bytes, 3, bytes.bytesAvailable);
stream.close();

Но т.к. количество байт варьируется, не всегда помогает.

Вопрос: WTF? Что с этим делать?

Добавлено через 1 час 19 минут
Вопрос решён:

Код AS3:

var file:File = new File(getFullPath(path));
 
var bytes:ByteArray = new ByteArray();
bytes.writeUTFBytes(xml.toXMLString());
 
var stream:FileStream = new FileStream();
stream.open(file, FileMode.WRITE);
stream.writeBytes(bytes);
stream.close();


alatar 20.11.2011 14:43

Цитата:

После чего в начале получившегося файла обнаруживается 3-4 мусорных байта.
Это не мусорные байты. writeObject сериализует в AMF.

Crash512 20.11.2011 15:47

Я подозревал:)


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

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