- ベストアンサー
テキストファイルの更新日時を取得
ジャバスクリプトを使用して○○○.txtというテキストファイルの更新日時を取得して その取得した日時をHTML内で表示する方法を教えてください。 表示形式は2009/00/00みたいなのが希望です。 すいませんジャバスクリプトは初心者なもので・・・・ 初心者向けに分かりやすくアドバイスいただけると助かります。 宜しくお願いします。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
SSIが使えるなら。 拡張子を変えるとかサーバによってやり方が違うけどとにかくSSIを動作させる。 SSI構文を日時を表示したいページに埋め込む。 http://www.tohoho-web.com/wwwssi.htm#Flastmod CGI(/php)が使えるなら。 更新日時を取得するプログラムを作って、表示側はJavascriptで。
その他の回答 (2)
- 神崎 渉瑠(@taloo)
- ベストアンサー率44% (1016/2280)
HTMLファイル自身の更新日時の場合は、document.lastModifiedで取得できます。 HTMLファイル自身と違うファイルの更新日時を取得するときは、 Ajaxを使って、 xmlttprequestObject.getResponseHeader('last-modified') でlast-modifiedヘッダを取得できます。 (ただしサーバーがlast-modifiedヘッダを出している場合に限る) 面倒ならこんな感じでいいかもしれません。 var d=new Date(xmlttprequestObject.getResponseHeader('last-modified')); alert(d.getFullYear()+'/'+(d.getMonth()+1)+'/'+d.getDate()); なお、Mac iCabはgetResponseHeader()は実装されていませんので、 getAllResponseHeaders()の戻り値から解析しないとダメです。 (2008年8月頃現在。バージョンアップにより対応している可能性もあります。)
- fujillin
- ベストアンサー率61% (1594/2576)
javascript ではできません。 jscript(Win系、IE限定)でよければ、FileSystemObjectを利用することで、 ファイルのDateLastModifiedを取得すれば可能です。 JScriptだとこんな感じ。 fad = ファイルアドレス; objFS = new ActiveXObject("Scripting.FileSystemObject"); dt = new Date(objFS.GetFile( fad ).DateLastModified); dl = dt.getFullYear() + "/" + ("0" + (dt.getMonth() + 1)).slice(-2) + "/" + ("0" + dt.getDate()).slice(-2);
お礼
ご回答ありがとうございます なるほど~ジャバスクリプトでは実現できないのですね>< IE限定というのはちょっと現実的ではないです ちなみにこの手の事を実現するにはどのような手段を使った方がいいのでしょうか??○○○.txtの更新を取得してそれを吐き出せればいいのでサーバー側に何かしらの設定をして○○○.txtがサーバーにアップされた日時を取得って感じなどで簡単にできないでしょうか?