JavaScript がそのデータを取得して処理できるように、JSON オブジェクトをファイルに書き込むローカル プログラムがあります。ファイルは<input>
オブジェクトを使用して選択されます。
<form id = "getfiles">
<input type = "file" multiple id = "files" />
</form>
次の JS 関数setInterval
を使用して、300 ミリ秒ごとに繰り返します。ただし、ファイルが変更されると、Google Chrome だけがファイルを再読み込みして新しいコンテンツを処理します。IE 10 および Firefox 20 では、ページ上のファイルを手動で再選択する必要があります。
function speakText()
{
var thefile = document.getElementById('files').files[0];
var lastChanged = thefile.lastModifiedDate;
var reader = new FileReader();
reader.onload = function(event)
{
var lcd = document.getElementById("last_change_date");
if (!lcd)
{
var spanLastChanged = document.createElement("span");
spanLastChanged.id = "last_change_date";
spanLastChanged.innerText = lastChanged;
console.log(lastChanged);
document.body.appendChild(spanLastChanged);
}
else
{
// compare lastChanged with last_change_date
var last_known_change = Date.parse(lcd.innerText);
// var last_known_change = Date.parse(thefile.lastModifiedDate);
if (last_known_change !== Date.parse(lastChanged))
{
console.log("Something is new since " + lcd.innerText);
var fileContent = event.target.result;
var commands = JSON.parse(fileContent);
handleJSON(fileContent);
lcd.innerText = lastChanged;
}
}
}
reader.readAsText(thefile, "UTF-8");
}