javascriptでローカル環境にファイルを保存する – FileSaver.js –
FileSaver,js は、ブラウザでファイルを生成し、ローカル環境にファイルを保存するライブラリ。
ブラウザの標準機能を使う場合、ユーザが明示的にダウンロード指示を出す必要があるだけでなく、ファイル名を指定しないといけないなど、何かと面倒くさい。このライブラリを使うことで、プログラム側で任意のタイミングでファイルを生成し、適切な名前を指定して保存することが可能になる。
HTML側 (ライブラリの読み込み)
<script src="/jslib/FileSaver.js"></script>
JavaScript側 (オブジェクトをJSON形式のファイルとして保存)
var anObject = hoge(); var space = 2; var fname = 'rw_station_aux.json'; var jsonString = JSON.stringify(anObject, null, space); // ファイルにしたい内容をJSON形式でシリアライズ // タイプを指定してBlobオブジェクトを生成。対象を [ ] で囲む。 var blob = new Blob([jsonString], { type : 'text/plain' }); // fnameで指定した名前でファイルを保存する saveAs(blob, fname);