📄 17-3 文件属性查看器.hta
字号:
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=GB2312" />
<title>17-3 文件属性查看器</title>
<style>
* { font-size:12px; font-family:宋体, Arial; } /*规定了所有的字体样式*/
body { overflow:auto; }
table { border-collapse:collapse; }
td { border:1px solid #555; padding:3px 15px; }
</style>
<script>
var fso;
//函数“$”根据指定字符串获取相应ID的对象
function $(str){ return(document.getElementById(str)); }
//窗体载入完毕时初始化
window.onload = function(){
//创建FSO控件
fso = new ActiveXObject("Scripting.FileSystemObject");
//绑定文件选择控件
$("f1").onchange = show_file_info;
}
//显示文件信息
function show_file_info(){
var path, f, re, atts;
//获取输入的文件路径
path = $("f1").value;
//确认路径有效性
if(!path)return;
if(!fso.FileExists(path))return;
//获取文件对象
f = fso.GetFile(path);
//解析文件的属性
atts = analysis(f.Attributes);
//输出文件相关的属性信息
$("attReadOnly").checked = atts.ReadOnly;
$("attHidden").checked = atts.Hidden;
$("attSystem").checked = atts.System;
$("attArchive").checked = atts.Archive;
$("attDateCreate").innerHTML = f.DateCreated;
$("attDateLastAccessed").innerHTML = f.DateLastAccessed;
$("attDateLastModified").innerHTML = f.DateLastModified;
$("attDrive").innerHTML = f.Drive;
$("attName").value = f.Name;
$("attParentFolder").innerHTML = f.ParentFolder;
$("attPath").innerHTML = f.Path;
$("attShortName").innerHTML = f.ShortName;
$("attShortPath").innerHTML = f.ShortPath;
$("attSize").innerHTML = f.Size;
$("attType").innerHTML = f.Type;
}
//解析文件属性
function analysis(att){
var re = new Object();
re.ReadOnly = false; re.Hidden = false;
re.System = false; re.Volume = false; re.Directory = false;
re.Archive = false; re.Alias = false; re.Compressed = false;
if(att>=2048){ re.Compressed = true; att-=2048; }
if(att>=1024){ re.Alias = true; att-=1024; }
if(att>=32){ re.Archive = true; att-=32; }
if(att>=16){ re.Directory = true; att-=16; }
if(att>=8){ re.Volume = true; att-=8; }
if(att>=4){ re.System = true; att-=4; }
if(att>=2){ re.Hidden = true; att-=2; }
if(att>=1){ re.ReadOnly = true; att-=1; }
return(re);
}
//设置文件属性值
function modifyAtt(){
var path, f, re, atts;
atts = ($("attReadOnly").checked?1:0) + ($("attHidden").checked?2:0) + ($("attSystem").checked?4:0) + ($("attArchive").checked?32:0);
path = $("f1").value;
if(!path)return;
if(!fso.FileExists(path))return;
try{
f = fso.GetFile(path);
f.Attributes = atts;
//如果文件名被修改,则执行修改文件名的操作
if(f.Name != $("attName").value)f.Name = $("attName").value;
}catch(e){ alert("文件属性设置失败,原因是:\r\n\r\n\t" + e.description); }
show_file_info();
}
</script>
</head>
<body>
请选择需要查看的文件<input type="file" id="f1">
<br/><br/>
<table>
<tr><td>文件属性:</td>
<td>
只读:<input type="checkbox" id="attReadOnly">
隐藏:<input type="checkbox" id="attHidden">
系统:<input type="checkbox" id="attSystem">
归档:<input type="checkbox" id="attArchive">
</td>
<td>创建日期:</td><td id="attDateCreate"></td>
</tr>
<tr><td>最后访问日期:</td><td id="attDateLastAccessed"></td>
<td>最后修改日期:</td><td id="attDateLastModified"></td>
</tr>
<tr><td>驱动器名:</td><td id="attDrive"></td>
<td>文件名称:</td><td><input id="attName"></td>
</tr>
<tr><td>所在文件夹名称:</td><td id="attParentFolder"></td>
<td>文件路径名称:</td><td id="attPath"></td>
</tr>
<tr><td>短文件名:</td><td id="attShortName"></td>
<td>短文件路径名称:</td><td id="attShortPath"></td>
</tr>
<tr><td>文件大小:</td><td id="attSize"></td>
<td>文件类型:</td><td id="attType"></td>
</tr>
<tr><td colspan="4" align="center">
<input type="button" onclick="modifyAtt();" value="修改属性">
<input type="button" onclick="show_file_info();" value="取消修改">
</td>
</tr>
</table>
</body>
</html>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -