В классе FileReference Flex нет метода save ()
Я пытаюсь экспортировать содержимое DataGrid в PDF
var bytes:ByteArray = myPDF.save(Method.LOCAL);
var f:FileReference = new FileReference();
f.save(bytes,"TestAttachment.pdf");
/* Call to a possibly undefined method save through a reference with static type flash.net:FileReference. */
Я использую AlivePDF версии 0.1.4.9 и Flex Builder 3 для создания простого приложения Flex
3 ответа
Обновил flex SDK до 3.6A и версию компилятора Flex до 10.1.0, спасибо @(Yasuyuki Uno) и FileReference.Save сработало
var f:FileReference = new FileReference();
f.save(bytes,"TestAttachment.pdf");
FileReference это просто ссылка на файл, вы ищете FileStream. Предполагая, что ByteArray уже является содержимым PDF:
var bytes:ByteArray = myPDF.save(Method.LOCAL);
var file:File = File.desktopDirectory.resolvePath("myPDF.pdf");
var fileStream:FileStream = new FileStream();
fileStream.open(file, FileMode.WRITE);
fileStream.writeBytes(bytes);
fileStream.close();
Чтобы найти каталоги на разных устройствах, проверьте это
Я думаю, что эта проблема вызвана настройками сборки.
В Flex Builder > Project > Properties > Flex Compiler установите минимальную версию Flash Player более 10.0.0.
После этого вы можете использовать метод FileReference.save().
Может быть, ваша настройка была 9.xx