ホームページ > ウェブフロントエンド > jsチュートリアル > JavaScript はファイルに直接書き込むことができますか? できる場合、どのようにすればよいですか?

JavaScript はファイルに直接書き込むことができますか? できる場合、どのようにすればよいですか?

Mary-Kate Olsen
リリース: 2024-12-18 05:14:10
オリジナル
493 人が閲覧しました

Can JavaScript Write Directly to Files, and If So, How?

JavaScript を使用してファイルにデータを書き込む

質問:

を直接書き込むことは可能ですか? JavaScript のみを使用してデータを外部ファイルに保存し、ファイルに印刷する必要はありません。コンソール?

答え:

はい、JavaScript を使用してファイルにデータを書き込むことは可能ですが、特定の制限があります。

ブラウザーは直接の書き込みを制限します。セキュリティ上の懸念によるファイルの書き込み。代わりに、Blob と URL.createObjectURL を使用して仮想ファイルを作成できます。これらの仮想ファイルはダウンロード リンクとして使用でき、ユーザーは推奨されたファイル名でローカルに保存できます。

Blob とオブジェクト URL を使用した実装:

var makeTextFile = function (text) {
  var data = new Blob([text], { type: 'text/plain' });
  return window.URL.createObjectURL(data);
};

var create = document.getElementById('create'),
  textbox = document.getElementById('textbox');

create.addEventListener('click', function () {
  var link = document.createElement('a');
  link.setAttribute('download', 'info.txt');
  link.href = makeTextFile(textbox.value);
  document.body.appendChild(link);

  window.requestAnimationFrame(function () {
    var event = new MouseEvent('click');
    link.dispatchEvent(event);
    document.body.removeChild(link);
  });
});
ログイン後にコピー

この例では、「作成」ボタンにより、「textbox」要素のテキストを含む仮想ファイルの作成がトリガーされます。ユーザーは、生成されたリンクをクリックして、この仮想ファイルをダウンロードできます。 「info.txt」ファイル名が提案されますが、ユーザーはファイルを保存するときに変更できます。

制限事項:

  • 作成したファイルを直接保存することはできません。ファイルを提供すると、セキュリティ上のリスクが生じる可能性があります。
  • このファイルは、ユーザーが保存するためのダウンロード リンクとしてのみ提供できます。
  • 一部のブラウザは、ユーザーが別の名前でファイルを保存できる「ダウンロード」属性をサポートしていない場合があります。

以上がJavaScript はファイルに直接書き込むことができますか? できる場合、どのようにすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート