JavaScript如何读取某个文件的更新时间?想要这种格式2015.5.29.21:12……不知道能否实现?
//只能用IE浏览器
<script>
function formateDate(d,fmt) { //author: meizz
var o = {
"M+": d.getMonth() + 1, //月份
"d+": d.getDate(), //日
"h+": d.getHours(), //小时
"m+": d.getMinutes(), //分
"s+": d.getSeconds(), //秒
"q+": Math.floor((d.getMonth() + 3) / 3), //季度
"S": d.getMilliseconds() //毫秒
};
if (/(y+)/.test(fmt)) fmt = fmt.replace(RegExp.$1, (d.getFullYear() + "").substr(4 - RegExp.$1.length));
for (var k in o)
if (new RegExp("(" + k + ")").test(fmt)) fmt = fmt.replace(RegExp.$1, (RegExp.$1.length == 1) ? (o[k]) : (("00" + o[k]).substr(("" + o[k]).length)));
return fmt;
}
function createAndReadFile(){
var ts;
//创建文件读写activex对象
var fso = new ActiveXObject("Scripting.FileSystemObject");
var file ;
try{
//先取文件,如果没有,则创建新的文件
file = fso.GetFile("c:\\test.txt");
}catch(e){
file = null;
}
if(!file){
//如果没有,创建文件
try{
//创建之后得到文件的句柄
fso.CreateTextFile("c:\\test.txt",true);
file = fso.GetFile("c:\\test.txt");
}catch(Ee){
file = null;
}
}
if(file == null){
alert('创建本地文件失败,file==null');
return;
}
//显示文件名
alert(fso.GetFileName(file));
//显示文件的最后修改时间
var dt = file.DateLastModified;
alert(formateDate(new Date(dt),'yyyy.MM.dd.hh:mm:ss'));
ts = file.OpenAsTextStream(2,true);
//将以下2行文字写到文件中
ts.WriteLine('port=8080');
ts.WriteLine('ip=http://127.0.0.1');
ts.Close();
ts = file.OpenAsTextStream(1,true);
//读取文件的内容
var str = ts.ReadAll();
ts.Close();
//删除文件的方法
// fso.DeleteFile(fso.GetFileName(file));
}
createAndReadFile();
</script>
js不能直接访问文件系统,除非用io.js或者activex比如scripting.fso等等。