当前位置: 首页 > 图文教程 > 网络编程 > Javascript > 硬盘浏览程序,保存成网页格式便可使用

Javascript
JS getMonth()日期函数的值域是0-11
jQuery 处理网页内容的实现代码
jQuery 树形结构的选择器
jQuery 处理表单元素的代码
JQuery 动画卷页 返回顶部 动画特效(兼容Chrome)
JavaScript 10件让人费解的事情
类似GMAIL的Ajax信息反馈显示
两个比较有用的Javascript工具函数代码
JavaScript Timer实现代码
JavaScript 学习技巧
JavaScript 题型问答有答案参考
js删除select中重复项的实现代码
javascript中的链式调用
JavaScript DOM学习第一章 W3C DOM简介
JavaScript DOM 学习第二章 编辑文本
JavaScript DOM 学习第三章 内容表格
JavaScript DOM学习第四章 getElementByTagNames
JavaScript DOM 学习第五章 表单简介
JavaScript DOM学习第六章 表单实例
JavaScript DOM 学习第七章 表单的扩展

Javascript 中的 硬盘浏览程序,保存成网页格式便可使用


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-12   浏览: 56 ::
收藏到网摘: n/a

硬盘浏览程序,保存成网页格式便可使用,放到随意一个盘,不要放桌面就可以了
复制代码 代码如下:

<html>
<head>
<script language="javascript" type="text/javascript">
var errorinf=new Error();
var fso,fdrive,ffolder,ffile;
var getdata="",selfpath="",drvpath="",favpath="";
var drive=new Array(),favorite=new Array();
var currentdrive="";
var hidestate=false;
var lastdrive="",lastfav="";
var ppath=new Error(),ppathcounter=0,favcounter=0;
var openfromfav=0;
function initdoc()
{
try
{
var outstr="",counter=0,i=0,writestr="";
fso=new ActiveXObject("Scripting.FileSystemObject");
selfpath=fso.GetParentFolderName(location.pathname.replace(/\//,""));
drvpath=selfpath+"\\drvinf.ini";
/*Get the hard drives on the computer.*/
if(!fso.FileExists(drvpath))
{
fdrive=fso.Drives;
getdata=new Enumerator(fdrive);
for(;!getdata.atEnd();getdata.moveNext())
if(getdata.item().DriveType==2)
{
drive[counter]=getdata.item().DriveLetter;
writestr+=drive[counter]+"$";
counter++;
}
ffile=fso.CreateTextFile(drvpath,true);
writestr=writestr.replace(/\$$/,"");
ffile.WriteLine(writestr+"\r");
ffile.Close();
}
else
{
ffile=fso.OpenTextFile(drvpath,1);
getdata=ffile.ReadAll().replace(/\'|\"|\\|\/|\:|\s+/g,"");
getdata=getdata.replace(/^\$+|\$+$/,"");
getdata=getdata.replace(/\$\$+/,"$");
drive=getdata.split("$");
ffile.Close();
}
for(i=0;i<drive.length;i++)
outstr+="[<a href='' id='drive"+drive[i]+"' onClick=\"driveactive(drive["+i+"]);return false;\">本地磁盘:"+drive[i]+"</a>]";
outstr+="显示隐藏内容<input style='height:15px;border:none;' type='checkbox' id='showorhide' onClick='hidestate=this.checked;flashdrive();'>"
document.getElementById("drives").innerHTML=outstr;
getdata="";outstr="";
/*Get the exist item.*/
favpath=selfpath+"\\favinf.ini";
if(fso.FileExists(favpath))
{
ffile=fso.OpenTextFile(favpath,1);
if(!ffile.AtEndOfStream)
{
getdata=ffile.ReadAll().replace(/\"|\s+/g,"");
getdata=getdata.replace(/^\|+|\|+$/,"");
getdata=getdata.replace(/\|\|+/,"|");
favorite=getdata.split("|");
}
ffile.Close();
if(favorite[0]=="")
favcounter=0;
else
favcounter=favorite.length;
}
else
{
ffile=fso.CreateTextFile(favpath,true);
ffile.Close();
favcounter=0;
}
openfav();
driveactive("C");
getdata="";
}catch(errorinf){alert(errorinf.description+"\n\n请不要随便改变数据文件*.ini文件中的内容.");}
}
function driveactive(driveval)
{
try{
if(lastdrive==("drive"+driveval)&¤tdrive.match(/^[a-z]\:\\$/i))
{
document.getElementById("showorhide").focus();
return false;
}
if(lastdrive=="")lastdrive="driveC";
document.getElementById(lastdrive).style.backgroundColor="#CCCCCC";
lastdrive="drive"+driveval;
document.getElementById(lastdrive).style.backgroundColor="#FFFFDD";
var att="",drv,totalsize,freespace,usespace,outstr="",pathstr="",attribu=0,subfolfil="",fcount=0;
drv=fso.GetDrive(driveval);
totalsize=Math.round((drv.TotalSize/Math.pow(2,30))*100)/100;
freespace=Math.round((drv.FreeSpace/Math.pow(2,30))*100)/100;
usespace=Math.round((totalsize-freespace)*100)/100;
totalsize>1 ? totalsize+="GB":totalsize=totalsize*Math.pow(2,10)+"MB";
freespace>1 ? freespace+="GB":freespace=freespace*Math.pow(2,10)+"MB";
usespace>1 ? usespace+="GB":usespace=usespace*Math.pow(2,10)+"MB";
att+="本地磁盘:"+driveval+"\n文件系统:"+drv.FileSystem+"\n磁盘大小:"+totalsize+"\n已用空间:"+usespace+"\n可用空间:"+freespace+"\n";
outstr="";
currentdrive=pathstr=driveval+":\\";
ffolder=fso.GetFolder(pathstr+"\\").SubFolders;
getdata=new Enumerator(ffolder);
outstr="<div class='showcon'>文件夹:[<a href='' onclick=\"return unfurlorfold('folshow',this);\">隐藏</a>]<div id='folshow'>";
ppathcounter=0;
for(;!getdata.atEnd();getdata.moveNext())
{
attribu=getdata.item().Attributes;
if(hidestate||attribu==16||attribu==17||attribu==48||attribu==49)
{
fcount++;
ppath[ppathcounter]=driveval+":\\"+getdata.item().name;
outstr+="<div><a href='' onClick=\"folderactive(ppath["+ppathcounter+"]);"
outstr+="return false;\">"+getdata.item().Name+"</a></div>";
ppathcounter++;
}
}
subfolfil="找到"+fcount+"个文件夹,";
fcount=0;
ffile=fso.GetFolder(pathstr).Files;
getdata=new Enumerator(ffile);
outstr+="</div></div><div class='showcon'>文  件:[<a href='' onclick=\"return unfurlorfold('filshow',this);\">隐藏</a>]<div id='filshow'>";
for(;!getdata.atEnd();getdata.moveNext())
{
attribu=getdata.item().Attributes;
if(hidestate||attribu==0||attribu==1||attribu==32||attribu==33)
{
fcount++;
outstr+="<div><a href=\""+currentdrive+"\" target='_blank'>"+getdata.item().Name+"</a></div>";
}
}
outstr+="</div></div>";
subfolfil+=fcount+"个文件.";
document.getElementById("showcontent").innerHTML=outstr;
document.getElementById("currentdrive").innerText=currentdrive;
document.getElementById("showdriveatt").innerText=att;
att="文件夹名称:\n\n文件夹大小:\n创建时间:\n\n修改时间:\n\n访问时间:\n\n";
document.getElementById("showfolderatt").innerText=att;
document.getElementById("subfolfil").innerText=subfolfil;
att="[<a href=\""+currentdrive+"\" target='_blank'>打开</a>]";
att+="[<a href='' onclick=\"addfav();return false;\">收藏</a>]";
document.getElementById("openfol").innerHTML=att;
document.getElementById("showorhide").focus();
getdata="";
}catch(errorinf){alert(errorinf.description+"\n\n请不要随便改变数据文件*.ini文件中的内容.");}
}
function folderactive(folderval)
{
try
{
var att="",fol="",totalsize=0,sizesign="";
openfolder(folderval);
if(!folderval.match(/^[a-z]\:\\$/i))
{
fol=fso.GetFolder(folderval);
totalsize=fol.Size/Math.pow(2,30);
totalsize>1 ? sizesign="GB":(totalsize=totalsize*Math.pow(2,10),sizesign="MB");
(totalsize<1 && sizesign=="MB") ? (totalsize=totalsize*Math.pow(2,10),sizesign="KB"):{}
totalsize=Math.round((totalsize)*100)/100+sizesign;
att+="文件夹名称:\n"+fol.Name+"\n文件夹大小:"+totalsize+"\n创建时间:\n";
att+=fol.DateCreated+"\n修改时间:\n"+fol.DateLastModified+"\n访问时间:\n"+fol.DateLastAccessed;
document.getElementById("showfolderatt").innerText=att+"\n";
}
}catch(errorinf){alert(errorinf.description+"\n\n请不要随便改变数据文件*.ini文件中的内容.");}
}
function openfolder(currfolder)
{
try
{
var sign=0,outstr="",attribu=0,subfolfil="",fcount=0;
if(currfolder==""){alert("没有选择文件夹.");return false;}
currentdrive=currfolder;
ffolder=fso.GetFolder(currfolder).SubFolders;
getdata=new Enumerator(ffolder);
outstr="<div class='showcon'>文件夹:[<a href='' onclick=\"return unfurlorfold('folshow',this);\">隐藏</a>]<div id='folshow'>";
ppathcounter=0;
for(;!getdata.atEnd();getdata.moveNext())
{
attribu=getdata.item().Attributes;
if(hidestate||attribu==16||attribu==17||attribu==48||attribu==49)
{
fcount++;
ppath[ppathcounter]=currfolder.replace(/\\+$/i,"")+"\\"+getdata.item().name;
outstr+="<div><a href='' onClick=\"folderactive(ppath["+ppathcounter+"]);"
outstr+="return false;\">"+getdata.item().Name+"</a></div>";
ppathcounter++;
}
}
subfolfil="找到"+fcount+"个文件夹,";
fcount=0;
ffile=fso.GetFolder(currfolder).Files;
getdata=new Enumerator(ffile);
outstr+="</div></div></div><div class='showcon'>文  件:[<a href='' onclick=\"return unfurlorfold('filshow',this);\">隐藏</a>]<div id='filshow'>";
for(;!getdata.atEnd();getdata.moveNext())
{
attribu=getdata.item().Attributes;
if(hidestate||attribu==0||attribu==1||attribu==32||attribu==33)
{
fcount++;
if(openfromfav==0)
outstr+="<div><a href=\""+currentdrive+"\" target='_blank'>"+getdata.item().Name+"</a></div>";
else
outstr+="<div><a href=\""+currentdrive+"\\"+getdata.item().Name+"\" target='_blank'>"+getdata.item().Name+"</a></div>";
}
}
outstr+="</div></div>";
subfolfil+=fcount+"个文件.";
document.getElementById("showcontent").innerHTML=outstr;
document.getElementById("currentdrive").innerText=currentdrive;
att="文件夹名称:\n\n文件夹大小:\n创建时间:\n\n修改时间:\n\n访问时间:";
document.getElementById("showfolderatt").innerText=att;
document.getElementById("subfolfil").innerText=subfolfil;
att="[<a href=\""+currentdrive+"\" target='_blank'>打开</a>]";
att+="[<a href='' onclick=\"addfav();return false;\">收藏</a>]";
document.getElementById("openfol").innerHTML=att;
getdata="";
openfromfav=0;
}catch(errorinf){alert(errorinf.description+"\n\n请不要随便改变数据文件*.ini文件中的内容.");}
}
function upfile()
{
var rootpath="";
rootpath=currentdrive;
if(!rootpath.match(/^[a-z]\:\\$/i))
{
rootpath=rootpath.replace(/\\[^\\]*$/,"");
if(rootpath.match(/^[a-z]\:$/i)){rootpath+="\\";}
folderactive(rootpath);
}
else
alert("驱动器根目录.");
}
function flashdrive()
{
folderactive(currentdrive);
}
function openfav()
{
lastfav="";
var outstr="",i=0;
for(i;i<favcounter;i++)
{
outstr+="<a id='fav"+i+"' href='' onclick=\"openfromfav=1;folderactive(favorite["+i+"]);"
outstr+="favactive(this.id);return false;\" target='_blank'>"+favorite[i].replace(/^.+\\/,"")+"</a><br>";
}
document.getElementById("showfavorite").innerHTML=outstr;
document.getElementById("delfav").value="";
}
function favactive(favid)
{
var i=parseInt(favid.match(/\d/));
if(lastfav!="")
document.getElementById(lastfav).style.backgroundColor="#CCCCCC";
lastfav=favid;
document.getElementById("delfav").value=favorite[i];
document.getElementById(lastfav).style.backgroundColor="#FFFFDD";
document.getElementById("showorhide").focus();
}
function addfav()
{
try
{
if(currentdrive.match(/^[a-z]\:\\$/i))
{
alert("只能收藏文件夹.");
return false;
}
var i=0;
for(i=0;i<favcounter;i++)
{
if(favorite[i]==currentdrive)
{
alert("常用文件夹中已经存在该文件夹.");
return false;
}
}
if(fso.FileExists(favpath))
{
ffile=fso.OpenTextFile(favpath,8);
}
else
{
ffile=fso.CreateTextFile(favpath,true);
}
ffile.Write("|"+currentdrive);
ffile.Close();
favorite[favcounter]=currentdrive;
favcounter++;
openfav();
alert("添加成功.");
}catch(errorinf){alert(errorinf.description+"\n\n请不要随便删除数据文件*.ini文件.");}
}
function delfav()
{
try
{
var delpath=document.getElementById("delfav").value;
var i=lastfav.match(/\d/),j=parseInt(i);
var newfav="";
document.getElementById("showorhide").focus();
if(delpath=="")
{
alert("没有选择常用文件夹.");
return false;
}
if(confirm("确定删除常用文件夹(并非从硬盘删除):\n"+delpath+"\n?"))
{
favcounter--;
for(j;j<favcounter;j++)
favorite[j]=favorite[j+1];
for(j=0;j<favcounter;j++)
newfav+=favorite[j]+"|";
ffile=fso.OpenTextFile(favpath,2);
newfav=newfav.replace(/^\||\|$/,"");
ffile.WriteLine(newfav);
ffile.Close();
openfav();
document.getElementById("delfav").value="";
alert("删除成功.");
}
}catch(errorinf){document.getElementById("delfav").value="";alert(errorinf.description+"\n\n请不要随便删除数据文件*.ini文件.");}
}
function unfurlorfold(objid,obj)
{
if(obj.innerText=="隐藏")
{
obj.innerText="显示";
document.getElementById(objid).style.display="none";
}
else
{
obj.innerText="隐藏";
document.getElementById(objid).style.display="";
}
document.getElementById("showorhide").focus();
return false;
}
</script>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>FileLookThroughAdmin V1.0</title>
<style type="text/css">
<!--
body{
background-color:#EEEEEE;}
div.main{
background-color:#CCCCCC;
width:100%;
padding:6px 10px 10px;}
h1{font-size:36px;
font-family:"华文彩云";
color:#0000FF;}
hr{
width:95%;
text-align:left;}
table.tableclass{
table-layout:fixed;
word-wrap:break-word;
width:100%;
font-size:12px;
background-color:#EEEEEE;}
table.tableclass td{
background-color:#CCCCCC;}
#drive{}
td.drvinf{
vertical-align:top;
padding:5px;}
td.folderfile{
height:430px;
vertical-align:top;}
td.folderfile div.showcon{
width:100%;}
td.folderfile div.showcon div div{
padding:1px 0px;
width:49%;
float:left;}
a:link{text-decoration:none;
color:#0000FF;}
a:active{text-decoration:none;
color:#0000FF;}
a:visited{text-decoration:none;
color:#0000FF;}
a:hover{
text-decoration:underline;
color:#FF0000;
background-color:#FFFFDD;}
.button{
border:none;
height:20px;
width:50px;
background-color:#CCCCCC;}
td.fav{
vertical-align:top;
padding:5px;}
-->
</style>
</head>
<body onLoad="javascript:initdoc();status='FileLookThroughAdmin V1.0';">
<div class="main">
<h1>FileLookThroughAdmin</h1>
<div style="margin-top:-36px;"><hr></div>
<div style="margin-top:-14px;position:relative;left:5%;"><hr></div>
<div>
<table class="tableclass">
<tr align="center">
<td width="18%">收藏夹</td>
<td width="60%">文件夹及文件</td>
<td>相关信息</td>
</tr>
<tr>
<td align="center">
HardDrives>>
</td>
<td colspan="2">
<div id="drives"></div>
</td>
</tr>
<tr>
<td align="center">
Tag>>
</td>
<td align="center" colspan="2">
DisplayContent
</td>
</tr>
<tr>
<td align="center">
CurrentPath>>
</td>
<td colspan="2">
<div id="currentdrive"></div>
</td>
</tr>
<tr>
<td class="fav">
<div>常用文件夹:</div>
<div id="showfavorite"></div>
</td>
<td rowspan="2" class="folderfile">
<div onclick="upfile();" style="height:15px;cursor:pointer;padding-top:5px;" align="center"
onmouseover="this.style.backgroundColor='#FFFFDD';"
onmouseout="this.style.backgroundColor='#CCCCCC';">
上一级目录</div>
<div id="showcontent" style="padding-left:5px;"></div>
</td>
<td rowspan="2" class="drvinf">
<font color="#FF0000">当前驱动器信息:</font>
<div id="showdriveatt"></div>
<font color="#FF0000">当前文件夹信息:</font>
<span id="openfol"></span>
<div id="showfolderatt"></div>
<div id="subfolfil" style="color:#FF0000;"></div>
</td>
</tr>
<tr>
<td class="fav">
<div>删除常用文件夹:</div><br>
<div align="center">
P:<input id="delfav" type="text" style="border:none;" readonly><br><br>
[<a href="" onClick="delfav();return false;">执行删除</a>]
</div>
</td>
</tr>
</table>
</div>
</div>
<div>
<font style="font-size:12px;cursor:default;" color="#666666" onmouseover="this.color='#FF0000'" onmouseout="this.color='#666666'">
Design:sgw.LKing(∮LKing♂)[FS:Ecjtu2006|QQ:28857496|E-Mail:[email protected]][@06.11]
</font>
</div>
</body>
</html>