javascriptはtxtファイルを生成してダウンロードすることを実現します。



以下の簡単な関数により、サーバに接触することなくブラウザでファイルを直接生成することができます。これはすべてのHTML 5準備完了ブラウザに適用されます。ダウンロードのプロパティ:を使用しています。
function download(filename, text) {
  var element = document.createElement('a');
  element.setAttribute('href', 'data:text/plain;charset=utf-8,' + encodeURIComponent(text));
  element.setAttribute('download', filename);

  element.style.display = 'none';
  document.body.appendChild(element);

  element.click();

  document.body.removeChild(element);
}


download("hello.txt","This is the content of my file :)");
ライブラリを作成し、FileSaver.jsはsaveAs()をサポートしていないFileSaverインターフェースのブラウザで実現します。より大きなファイルを保存する必要がある場合、またはBLOBのサイズ制限、または十分なメモリがない場合は、より高級なStreamSaver.jsを見てください。これは新しいStreams APIの強力な機能を使って、データを直接ハードディスクに保存することができます。同時に進捗確認をサポートします。キャンセルといつ終わりますか?下のコードセグメントは、サーバへのリンクなしにファイルを生成してダウンロードすることができます。
var content = "What's up , hello world";
// any kind of extension (.txt,.cpp,.cs,.bat)
var filename = "hello.txt";

var blob = new Blob([content], {
 type: "text/plain;charset=utf-8"
});

saveAs(blob, filename);
次の表には、別のブラウザでのFileSaver.jsの互換性が表示されます。
Browser
コンストラスas
Filenames
Max Blob Size
Dependencies
Firefox 20+
Blob
はい
800 MiB
ノン?ネ
Firefox<20
data:URI
No.
n/a
Blob.js
Chrome
Blob
はい
[500 MiB][3]
ノン?ネ
Chrome for Android
Blob
はい
[500 MiB][3]
ノン?ネ
Edge
Blob
はい

ノン?ネ
IE 10+
Blob
はい
600 MiB
ノン?ネ
Opera 15+
Blob
はい
500 MiB
ノン?ネ
Opera<15
data:URI
No.
n/a
Blob.js
Safari 6.1+*
Blob
No.

ノン?ネ
Safari<6
data:URI
No.
n/a
Blob.js
Safari 10.1+
Blob
はい
n/a
ノン?ネ
注意:最新のブラウザをサポートしていますが、いくつかの技術を理解してこそ、より良い運用ができます。