Можете ли вы записывать файлы в Chrome 8?

Мне интересно, можно ли с новым файловым API, представленным в Chrome (в настоящее время я не беспокоюсь о кросс-браузерной поддержке), можно было бы выполнять обратную запись в файлы, открытые через ввод файла.

Вы можете увидеть пример того, что я пытаюсь сделать здесь: http://www.grehz.com/ide< /а>.

Я знаю, что могу использовать сценарии на стороне сервера для динамического создания файлов и предоставления пользователю возможности загружать их в обычном режиме. Я надеюсь, что есть способ выполнить эту чисто клиентскую сторону. Я где-то читал, что вы можете писать в файлы, открытые через ввод файла. Мне не удалось найти никаких примеров этого, хотя я видел передачу ссылок на класс FileWriter.

Я бы совершенно не удивился, если бы это было невозможно (вероятно, это связано с проблемами безопасности). Просто ищу какое-то руководство или ресурсы.

ОБНОВИТЬ:

Я читал здесь: http://dev.w3.org/2009/dap/file-system/file-writer.html

Когда я играл в Chrome, похоже, что FileSaver и FileWriter не реализованы, но BlobBuilder реализован. Я могу вызвать getBlob() для объекта BB, есть ли способ сохранить его без FileSaver или FileWriter?

ОБНОВЛЕНИЕ2:

Я обнаружил эту проблему в проекте Chromium: http://code.google.com/p/chromium/issues/detail?id=65615&q=FileSaver&colspec=ID%20Stars%20Pri%20Area%20Feature%20Type%20Status%20Summary%20Modified%20Owner%20Mstone%20OS

Итак, ясно, что он еще не был реализован ни в одной версии (однако, нет упоминания о FileWriter - хотя я считаю, что FileWriter зависит от FileSaver).

Отойдя от этого, я рассматриваю решение на стороне сервера. Когда пользователь нажимает кнопку «Сохранить», содержимое текстовой области отправляется в сценарий, который затем записывается на страницу и отправляется обратно в виде открытого текста или любого другого MIME-типа, подходящего для загрузки пользователем. Любые другие предложения? Это решение подходит для «сохранить как», но оно немного неуклюже, как кнопка сохранения общего назначения.


person gregghz    schedule 25.12.2010    source источник


Ответы (2)


Откуда: http://code.google.com/p/chromium/issues/detail?id=58985#c7

FileSystem — это действительно подходящее место для хранения больших файлов (что, похоже, вы и делаете) и доступно в Chrome 9. Я предлагаю вам взглянуть на эти альтернативы.

Обратите внимание на метку not-extensions в левом верхнем углу. Похоже, это может быть только для Chromium OS. Я написал Джереми, разработчику, который сделал этот комментарий, для разъяснения.

Обновление: Джереми ответил, что расширения на самом деле получат доступ к File API, включая запись, но это будет ограничено изолированной программной средой. Он также сослался на некоторые неиспользованные документы по этому вопросу: http://code.google.com/p/html5rocks/source/browse/www.html5rocks.com/content/tutorials/file/filesystem/index.html?spec=svn1cbb2aab2d6954a56f3067d2d3b9e997215be441&r=1cbb2aab2d6954a56f3067d2d3b9e997215be441

person crizCraig    schedule 13.01.2011
comment
Я думал о том, чтобы сделать что-то вроде этого. На самом деле это предназначено для Chromium OS. Мне посчастливилось получить Cr-48. Первое, что я заметил, это отсутствие приличной IDE. Так что я начал работать над этим. Чтение и запись локальных файлов, надеюсь, не будет концом ... В конце концов мне понадобится ftp или другие решения удаленного типа. - person gregghz; 13.01.2011
comment
Круто, я специально работаю над редактором CSS. Я тоже думаю об удалёнке. В настоящее время я использую хранилище localStorage и web-sql. В конце концов, я могу сделать сервис удаленного сохранения типа CDN. Дайте мне знать, если у вас есть вопросы о ваших вещах (craigquiter+so на gmail). - person crizCraig; 13.01.2011

Я не знаю способа сохранить до тех пор, пока эти API не будут реализованы, что может занять некоторое время.

person Wayne Brantley    schedule 26.12.2010
comment
который может быть в свободное время - есть что-нибудь более конкретное? Я обнаружил неназначенную ошибку для FileSaver, поэтому я предполагаю, что она имеет низкий приоритет. Возможно, это связано с количеством споров вокруг этой конкретной функции? - person gregghz; 28.12.2010