任意の内容のテキストファイルを生成してダウンロードさせる

Javascriptでファイル名とファイルのテキストを指定できる

サンプルのリンクをクリックしてみてください

内容カスタム

青空文庫 より



吾輩は猫である
夏目漱石



吾輩は猫である。名前はまだ無い。
 どこで生れたかとんと見当というものである事はようやくこの頃知った。
 この書生の掌の裏助からないと思っていると、どさりと音がして眼から火が出た。それまでは記憶しているがあとは何の事やらいくら考え出そうとしても分らない。
 ふと気が付いて見ると書生はいない。たくさんおった兄弟が一疋の上から急に笹原の中へ棄てられたのである。
 ようやくの思いで笹原を這い出すと向うに大きな池がある。吾輩は池の前に坐ってどうしたらよかろうと考えて見た。別にこれという分別める事にしたのである。
 吾輩の主人は滅多に何とかかんとか不平を鳴らしている。
 吾輩がこの家へ住み込んだ当時は、主人以外のものにははなはだ不人望であった。どこへ行っても跳かれた。
 吾輩は人間と同居して彼等を観察すればするほど、彼等は我儘ってすましている。白君は軍人の家におり三毛君は代言の主人を持っている。吾輩は教師の家に住んでいるだけ、こんな事に関すると両君よりもむしろ楽天である。ただその日その日がどうにかこうにか送られればよい。いくら人間だって、そういつまでも栄える事もあるまい。まあ気を永く猫の時節を待つがよかろう。
 我儘のような話をしているのを聞いた。
「どうも甘なりと。どうだ君も画らしい画をかこうと思うならちと写生をしたら」
「へえアンドレア・デル・サルトがそんな事をいった事があるかい。ちっとも知らなかった。なるほどこりゃもっともだ。実にその通りだ」と主人は無暗が見えた。
 その翌日吾輩は例のごとく椽側めてやらなくてはこの先どこまで増長するか分らない。
 我儘もこのくらいなら我慢するが吾輩は人間の不徳についてこれよりも数倍悲しむべき報道を耳にした事がある。
view source

JavaScript

var downloadAsFile = function(fileName, fileContentData) {
  var blob = new Blob([fileContentData]);
  var url = window.URL || window.webkitURL;
  var blobURL = url.createObjectURL(blob);
  var a = document.createElement('a');
  a.download = fileName;
  a.href = blobURL;
  a.textContent = 'DOWNLOAD(test)';
  return a;
};
var a = downloadAsFile('秘蔵のエロファイル.txt', 'https://hi0a.com/ welcome!');
console.log(a);
document.getElementById('demo').appendChild(a);

$(function(){

  $('#fileContent').val( $('#fileContent').val() + $('#novel').text());
  $('#novel').remove();

  $('#DL').on('click', function(){
    var fileName = $('#fileName').val();
    var fileContentData = $('#fileContent').val();
    if(!fileName){
      fileName = '_';
    }
    fileName = fileName +'.txt';
    console.log(fileName);
    console.log(fileContentData);
    var a = downloadAsFile(fileName, fileContentData);
    a.click();
    return false;
  });
});

CSS

form{
  margin:20px auto;
  width:80%;
}
label{
  display:block;
  margin-bottom:8px;
}
input,textarea{
  width:100%;
}

HTML

ページのソースを表示 : Ctrl+U , DevTools : F12

view-source:https://hi0a.com/demo/-js/js-download-text-blob/

ABOUT

hi0a.com 「ひまアプリ」は無料で遊べるミニゲームや便利ツールを公開しています。

プログラミング言語の動作デモやWEBデザイン、ソースコード、フロントエンド等の開発者のための技術を公開しています。

必要な機能の関数をコピペ利用したり勉強に活用できます。

プログラムの動作サンプル結果は画面上部に出力表示されています。

環境:最新のブラウザ GoogleChrome / Windows / Android / iPhone 等の端末で動作確認しています。

画像素材や音素材は半分自作でフリー素材配布サイトも利用しています。LINK参照。

動く便利なものが好きなだけで技術自体に興味はないのでコードは汚いです。

途中放置や実験状態、仕様変更、API廃止等で動かないページもあります。