Мне было интересно, как преобразовать файл, который у меня есть на моем сервере (pdf/excel/ppt), в ByteArray. Причина, по которой я хочу сделать это, - показать диалог открытым/сохраненным для пользователя, и я должен установить Content-Type в октет-поток. Диалог показывает, что только с помощью navigateToURL(), но для PDF-файлов это локальный браузер пользователя. Для URLRequest я должен установить данные как ByteArray. Я пытаюсь использовать код, расположенный здесь:Как преобразовать файл в ByteArray в Flex?
ответ
При условии, вы ориентируетесь Flash Player 10, это должно работать:
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" creationComplete="loadFile()">
<mx:Script>
<![CDATA[
private var loadedFile:ByteArray;
private function loadFile():void
{
var request:URLRequest = new URLRequest("http://test.enunciato.org/sample.pdf");
var urlLoader:URLLoader = new URLLoader(request);
urlLoader.addEventListener(Event.COMPLETE, onURLLoaderComplete);
urlLoader.dataFormat = URLLoaderDataFormat.BINARY;
urlLoader.load(request);
}
private function onURLLoaderComplete(event:Event):void
{
loadedFile = event.target.data;
}
private function saveLoadedFile():void
{
var file:FileReference = new FileReference();
file.save(loadedFile, "SampleDoc.PDF");
}
]]>
</mx:Script>
<mx:Button label="Save Image" horizontalCenter="0" verticalCenter="0" click="saveLoadedFile()" />
</mx:Application>
Предполагая, что вы загрузите файл первой - в этом примере, операция загрузки происходит на creationComplete, и байты откладываются от в loadFile - байты должны быть и готовы к сохранению, когда пользователь нажимает кнопку Сохранить изображение. Протестировано и проверено, что пример работает. Надеюсь, поможет!
Я думаю, что вы можете сделать что-то вроде этого, чтобы принести массив байт:
private var fileBytes:ByteArray = null;
private static function loadByteArray(url:String):void {
var loader:Loader = new Loader();
loader.contentLoaderInfo.addEventListener(Event.COMPLETE,
function(e:Event):void {
fileBytes = e.currentTarget.bytes;
});
loader.load(new URLRequest(encodeURI(url)));
}
// static initializer
{ loadByteArray("my url here"); }
Edit: Я Жду» t проверить вышеуказанную функцию. Если вы хотите напрямую загрузить байты, я бы предложил использовать ответ Кристиана Нунциато, так как его лучше и фактически проверять.
Тем не менее, это похоже на то, что вы хотите получить файл непосредственно с вашего сервера, в отличие от трехсторонней поездки (файл поступает с сервера, вы отправляете байты обратно на сервер, а затем, наконец, возвращаетесь клиенту). В этом случае вы можете попробовать установить тип контента и размещение контента на вложение на сервере (например, для pdf, это означало бы установку типа содержимого на «application/pdf» и добавление «Content-Disposition: attachment; filename = myFileName». pdf "в ваши заголовки ответов).
- 1. Изображение как ByteArray в Flex
- 2. Как преобразовать bytearray в zip-файл
- 3. Как преобразовать изображение в ByteArray в Flex 4
- 4. Flex: Read ByteArray,
- 5. Как преобразовать ActionScriptObject в ByteArray?
- 6. Flex: ByteArray для строки
- 7. Как преобразовать bytearray в изображение или изображение в bytearray?
- 8. Flex двоичная строка для ByteArray
- 9. flex core ByteArray Изображение
- 10. Как преобразовать bytearray в объект в HBase
- 11. Как преобразовать byteArray в String в PHP?
- 12. Как написать byteArray в файл?
- 13. Flex запускает файл pdf/doc, который загружается как ByteArray
- 14. Как преобразовать python str в bytearray
- 15. PIG - Можно ли преобразовать byteArray в кортеж
- 16. преобразовать byteArray в растровое изображение в android?
- 17. Как преобразовать файл в base64Binary в android?
- 18. Как преобразовать blob в byteArray в flask python?
- 19. AS3 ByteArray в C# ByteArray
- 20. Как сохранить ByteArray из Flex в FileField в Django
- 21. Как установить ByteArray в IconItemRenderer в Flex 4?
- 22. Сохранение ByteArray, в PDF-файл в Titanium
- 23. Как преобразовать компонент в изображение в flex?
- 24. Как преобразовать ByteArray в AudioBuffer и играть в Javascript
- 25. преобразовать byteArray в строку для инициализации jsonObject
- 26. Преобразовать байт строки в байты или ByteArray
- 27. Преобразовать спасся Юникод строка в ByteArray,
- 28. Python преобразовать ByteArray в шестнадцатеричном массив
- 29. Как преобразовать число в bytearray в порядке бит в конец
- 30. Невозможно преобразовать растровое изображение изображения в byteArray