2013-03-04 5 views
10

最新の最新のブラウザ(html5をサポート)で以下を達成する最良の方法は何ですか?私は主にGoogle Chromeをターゲットにしています。Javascriptファイルシステムにデータを保存する(ユーザープロンプトを使用)

私のアプリケーションでは、データはjavascriptで操作され、ブラウザプロンプト(ダイアログとして保存)を使用してファイルシステムに出力を書き込む必要があります。ファイルシステムに書き込むセキュリティの制限についてはわかりませんが、私は匿名の書き込みを計画していません(ただし、ユーザーにはプロンプトが表示され、場所が選択されています)。

saveAsはまだネイティブにサポートされていません。私の研究では、いくつかの選択肢があります。

  1. https://github.com/eligrey/FileSaver.js
  2. a.download(http://html5-demos.appspot.com/static/a.download.html
  3. ウェブファイルシステム
  4. オブジェクトのURL
  5. ネイティブサポートは、私はそれを使用することはできません場合

ファイルサーバ2,3,4にフォールバック。しかし、私は名前を付けて保存ダイアログを開く方法を見つけることはありません。それはデフォルトの場所(Macのダウンロードフォルダ)にファイルを保存するだけです。

最新のブラウザで適切なサポートを得るにはどのオプションを使用しますか? 名前を付けて保存ダイアログを開いて、ユーザーがファイルに名前を付ける方法を教えてください。

ありがとうございました。

+1

どのようなファイルですか。通常は、適切なヘッダーを使用してブラウザに出力するだけで、ブラウザはダイアログとして保存します。 –

+0

は、保存時にcsv/jsonにシリアライズするjsオブジェクトです。 – bsr

+0

http://stackoverflow.com/questions/4639372/export-to-csv-in-jquery –

答えて

3

私はNathan Hayfieldに同意します。ブラウザが保存ダイアログボックスを処理します。ヘッダーContent-Dispositionを設定すると、応答が添付ファイルとして返され、ブラウザはその応答をブラウザから処理します。例えば、 。

content.Headers.Add("Content-Disposition", "attachment; filename=export.csv"); 
関連する問題