PDA

Просмотр полной версии : Сохранение multiline текста


Artem06
26.02.2012, 05:03
Здравствуйте.

В официальной справке по функции save (FileReference) (http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/flash/net/FileReference.html#save()) пишут:
If the value is XML, it is written to a text file in XML format, with all formatting preserved.
Однако у меня почему-то все записывается в одну строку.

Код сохранения данных в файл:
...
var levels_file:FileReference = new FileReference();
levels_file.save(ExportLevels(), "levels.txt");
...

Код функции:
...
public function ExportLevels():XML {
var lvls:XML = <levels/>;
...
return lvls;
}
...

Если данные, возвращаемые функцией ExportLevels(), выводить в текстовое поле, то форматирование сохраняется как мне и нужно.

Что же я делаю не так?

Заранее спасибо.

alatar
26.02.2012, 16:29
levels_file.save(ExportLevels().toXMLString(), "levels.txt");

Artem06
26.02.2012, 18:44
alatar, спасибо за ответ, но я уже так пытался сделать - не помогло. :(

Проблема актуальна. У кого-то есть идеи?

До моих кривых ручонок:
http://i27.***********/big/2012/0226/b5/3e8eb318b0d0fcaf6ef70d816a9635b5.jpg

После них:
http://i27.***********/big/2012/0226/c9/f6168042385fcef536fcca8c98ab00c9.jpg

elder_Nosferatu
26.02.2012, 22:42
Попробуйте другой текст-редактор. Вполне возможно, что для перехода на новую строку использовался символ "\n", но винда (и ее стандартный блокнот) ждет два символа - "\n\r". Если бы файл сохранялся без форматирования, то и символов табуляции ("\t") небыло бы...

Добавлено через 3 минуты
Ваша XML-ка не указывает кодировку, да и XML-оглавления тоже нет. Плюс ко всему винда видит определяет формат файла по его расширению (.txt). Вот и показывает содержимое, как обычный текстовый файл.

Artem06
04.06.2012, 06:11
elder_Nosferatu, спасибо большое :)