2016-05-04 10 views
-1

私は、ユーザーがページを離れるときにテキストファイルを書くために使用するいくつかのJavaScriptを持っています。ここに関数があります:テキストファイルを書き、前のファイルを置き換える方法はありますか?

function handleBrowserCloseButton() { 

get_text(); 

var textToWrite = array; 
var textFileAsBlob = new Blob([textToWrite], {type:'text/plain'}); 
var fileNameToSaveAs = "windows.txt" 

var downloadLink = document.createElement("a"); 
downloadLink.download = fileNameToSaveAs; 
downloadLink.innerHTML = "Download File"; 
downloadLink.href = window.webkitURL.createObjectURL(textFileAsBlob); 
downloadLink.click(); 
} 

これはうまくいきます。唯一の問題は、ファイル名が "windows.txt"という定数であることです。これが意味することは、ユーザーがページを離れるたびに、nが毎回値が1ずつ増加する「windows(n).txt」であることです。

新しいファイルを毎回作成する代わりに、javascriptで "windows.txt"ファイルを置き換える方法はありますか?

+0

どのように保存していますか? –

+0

セキュリティ上の理由から、これを行うことはできません。 – SLaks

+0

希望の結果を得るには、まず前のバージョンを消去できますか? – Rob

答えて

0

いいえ、ブラウザのJavaScriptを使用している場合、セキュリティ上の理由から、ローカルマシン上に存在するファイルを変更することはできません。

ただし、ファイルが大きすぎない場合は、localStorageを使用してみてください。

// Store 
localStorage.setItem("key", "value"); 

// Retrieve 
localStorage.getItem("key"); 
localStorage

のサイズについて: What is the max size of localStorage values?

のlocalStorageでキーと値のペアは、ブラウザに格納され、各ブラウザの実装に応じて説明します。

0

パトリックエバンスの有益なコメントに基づいて、私はローカルテキストファイルを書き出しようと試みて、localStorageにデータを格納することに切り替えました。

関連する問題