Показать сообщение отдельно
  #1 (permalink)  
Старый 18.11.2011, 19:53
Интересующийся
Отправить личное сообщение для across Посмотреть профиль Найти все сообщения от across
 
Регистрация: 07.11.2011
Сообщений: 12

Загрузка и сохранение файла в HTML5 File System
Вообщем, прочитал я этот топик:
http://habrahabr.ru/blogs/javascript/120917/

Установил для Google Chrome это расширение чтобы видеть файлы которые в SandBoxe:
https://chrome.google.com/webstore/d...aeajffijockaea


Вот пример:

Предположим, что у нас есть галерея изображений и мы хотим сохранить несколько картинок к себе, используя HTML5 File System.
window.requestFileSystem  = window.requestFileSystem || window.webkitRequestFileSystem;

function onError(e) {
  console.log('Error', e);
}

var xhr = new XMLHttpRequest();
xhr.open('GET', '/path/to/image.png', true);
xhr.responseType = 'arraybuffer'; // <<<

// Как только картинка загрузилась
xhr.onload = function(e) { // <<<
  // Запрашиваем доступ у пользователя к файловой системе
  window.requestFileSystem(TEMPORARY, 1024 * 1024, function(fs) { // <<<
    // Доступ получен - создаем файл
    fs.root.getFile('image.png', {create: true}, function(fileEntry) {
      // Создаем писателя
      fileEntry.createWriter(function(writer) {

        writer.onwrite = function(e) { /*...*/ };
        writer.onerror = function(e) { /*...*/ };
        
        // Создаем Blob с данными картинки
        var bb = new BlobBuilder(); // <<<
        bb.append(this.response);   // <<<

        // Пишем в файл
        writer.write(bb.getBlob('image/png')); // <<<

      }, onError);
    }, onError);
  }, onError);
};

xhr.send();



вообщем, я тут указал урл изображения - он сохраняет в SandBox'е, но когда открываю этот файл - он не показывается.

Последний раз редактировалось across, 18.11.2011 в 19:56. Причина: установил уведомление
Ответить с цитированием