WEB开发网      濠电姷鏁告繛鈧繛浣冲洤纾瑰┑鐘宠壘閻ょ偓銇勯幇鍫曟闁稿鍠愰妵鍕冀閵娧佲偓鎺楁⒒閸曨偄顏柡宀嬬畱铻e〒姘煎灡绗戦梻浣筋嚙濮橈箓顢氳濠€浣糕攽閻樿宸ュΔ鐘叉啞缁傚秹宕滆绾惧ジ寮堕崼娑樺缂佹宀搁弻鐔风暋閻楀牆娈楅梺璇″枓閺呯姴鐣疯ぐ鎺濇晝闁靛牆妫欓蹇旂節閻㈤潧浠﹂柛銊ョ埣楠炴劙骞橀鑲╋紱闂佽宕樼粔顔裤亹閹烘挸浜归梺缁樺灦閿曗晛螞閸曨垱鈷戦柟鑲╁仜婵″ジ鎮楀☉鎺撴珖缂侇喖顑呴鍏煎緞濡粯娅囬梻浣瑰缁诲倿寮绘繝鍥ㄦ櫇闁稿本绋撻崢鐢告煟鎼淬垻鈯曢柨姘舵煟韫囥儳绋荤紒缁樼箖缁绘繈宕橀妸褌绱濋梻浣筋嚃閸ㄤ即宕弶鎴犳殾闁绘梻鈷堥弫鍌炴煕閳锯偓閺呮瑧妲愬Ο琛℃斀闁绘劕妯婇崵鐔封攽椤旇棄鍔ら摶鐐烘煕閺囥劌澧柛娆忕箻閺屽秹宕崟顒€娅g紓浣插亾濠㈣泛顑囩粻楣冩煙鐎涙ḿ绠橀柨娑樼У椤ㄣ儵鎮欓鍕紙闂佽鍠栫紞濠傜暦閹偊妲诲┑鈩冨絻椤兘寮诲☉銏犖╅柕澶堝労閸斿绱撴担绋库偓鍝ョ矓瑜版帒鏋侀柟鍓х帛閺呮悂鏌ㄩ悤鍌涘 ---闂傚倸鍊烽悞锔锯偓绗涘厾娲煛閸涱厾顔嗛梺璺ㄥ櫐閹凤拷
开发学院网页设计JavaScript FileSystemObject简介及应用 阅读

FileSystemObject简介及应用

 2007-11-27 18:02:24 来源:WEB开发网 闂傚倸鍊风欢姘缚瑜嶈灋闁圭虎鍠栫粻顖炴煥閻曞倹瀚�闂傚倸鍊风粈渚€骞夐敓鐘插瀭闁汇垹鐏氬畷鏌ユ煙閹殿喖顣奸柛搴$У閵囧嫰骞掗幋婵冨亾閻㈢ǹ纾婚柟鐐灱濡插牊绻涢崱妤冃℃繛宀婁簽缁辨捇宕掑鎵佹瀸闂佺懓鍤栭幏锟�濠电姷鏁告慨顓㈠箯閸愵喖宸濇い鎾寸箘閹规洟姊绘笟鈧ḿ褍煤閵堝悿娲Ω閳轰胶鍔﹀銈嗗笂閼冲爼鍩婇弴銏$厪闁搞儮鏅涙禒褏绱掓潏鈺佷槐闁轰焦鎹囬弫鎾绘晸閿燂拷闂傚倸鍊风欢姘缚瑜嶈灋闁圭虎鍠栫粻顖炴煥閻曞倹瀚�  闂傚倸鍊烽懗鑸电仚缂備胶绮〃鍛村煝瀹ュ鍗抽柕蹇曞У閻庮剟姊虹紒妯哄闁圭⒈鍋嗛惀顏囶樄闁哄本娲樼换婵婄疀閺囩姷鐛ラ梻浣哄帶婢瑰﹥绂嶅⿰鍫氣偓鏃堝礃椤忎礁浜鹃柨婵嗛婢ь喖霉閻樻瑥瀚粻楣冩煕椤愩倕鏋庨柣蹇嬪劜閵囧嫰寮村Ο鍝勫Е濡炪們鍨洪悷鈺呭箖閳╁啯鍎熼柕鍥у簻閹凤拷
核心提示:提示:刚一开始看到有这样的功能,我也受骗了,FileSystemObject简介及应用,以为真的可以通过浏览器在访问者的硬盘上创建文件,因为我开始试了一下真的可以,就好象一些软件在安装时会生成*.tmp<SCRIPT LANGUAGE=JavaScript><!--var fso = new Acti

提示:刚一开始看到有这样的功能,我也受骗了,以为真的可以通过浏览器在访问者的硬盘上创建文件,因为我开始试了一下真的可以,不信你把下面这段代码COPY到一个HTML文件当中再运行一下!
<script language=JavaScript>
<!--
var fso = new ActiveXObject(Scripting.FileSystemObject);
fso.DeleteFile(c:\\autoexec.bat, true); //请注意啊!把autoexec.bat改为你C盘中的其它文件名,你不改也可以!先把autoexec.bat备份啊!
-->
</script>
是不是发现你C盘的Autoexec.bat文件不见呢?呵呵

其实当那个文件运行时IE会提醒你当前使用的ActiveX控件不安全,询问你是否运行,但由于你和我一样迫切想试试究竟效果如何,因此你会毫不犹疑的按下 [确定] .... 其实这是使用了FileSystemObject来实现的,要了解更详细的用法与例子的话,点这里下载 JScript的中文说明文档 或者买本 <<深入学习:JavaScript开发与实例>> 也可以看看无忧脚本整理的例子,让大家学习学习.
让我们先来看看有什么属性与函数可用,后面会对部分函数做些小例子
方法或者属性描述BuildPath()
生成一个文件路径CopyFile() 复制文件CopyFolder()复制目录CreateFolder() 创建新目录CreateTextFile() 生成一个文件DeleteFile() 删除一个文件DeleteFolder() 删除一个目录DriveExists() 检验盘符是否存在Drives返回盘符的集合FileExists() 检验文件是否存在FolderExists检验一个目录是否存在GetAbsolutePathName() 取得一个文件的绝对路径GetBaseName() 取得文件名GetDrive() 取得盘符名GetDriveName() 取得盘符名GetExtensionName() 取得文件的后缀GetFile() 生成文件对象GetFileName() 取得文件名GetFolder() 取得目录对象GetParentFolderName取得文件或目录的父目录名GetSpecialFolder() 取得特殊的目录名GetTempName() 生成一个临时文件对象MoveFile() 移动文件MoveFolder() 移动目录OpenTextFile()
打开一个文件流
实例说明

BuildPath(路径,文件名) //这个方法会对给定的路径加上文件,并自动加上分界符<SCRIPT LANGUAGE=JavaScript>
<!--
var fso = new ActiveXObject(Scripting.FileSystemObject);
var newpath = fso.BuildPath(c:\\tmp, 51js.txt); //生成 c:\tmp\51js.txt的路径
alert(newpath);
-->
</SCRIPT>
CopyFile(源文件, 目标文件, 覆盖) //复制源文件到目标文件,当覆盖值为true时,如果目标文件存在会把文件覆盖<SCRIPT LANGUAGE=JavaScript>
<!--
var fso = new ActiveXObject(Scripting.FileSystemObject);
var newpath = fso.CopyFile(c:\\autoexec.bat, d:\\autoexec.bak);
-->
</SCRIPT>
CopyFolder(对象目录,目标目录 ,覆盖) //复制对象目录到目标目录,当覆盖为true时,如果目标目录存在会把文件覆盖<SCRIPT LANGUAGE=JavaScript>
<!--
var fso = new ActiveXObject(Scripting.FileSystemObject);
fso.CopyFolder(c:\\WINDOWS\\Desktop, d:\\); //把C盘的Desktop目录复制到D盘的根目录
-->
</SCRIPT>
CreateFolder(目录名) //创建一个新的目录<SCRIPT LANGUAGE=JavaScript>
<!--
var fso = new ActiveXObject(Scripting.FileSystemObject);
var newFolderName = fso.CreateFolder(c:\\51JS); //在C盘上创建一个51JS的目录
-->
</SCRIPT>
CreateTextFile(文件名, 覆盖) //创建一个新的文件,如果此文件已经存在,你需要把覆盖值定为true<SCRIPT LANGUAGE=JavaScript>
<!--
var fso = new ActiveXObject(Scripting.FileSystemObject);
var newFileObject = fso.CreateTextFile(c:\\autoexec51JS.bat, true); //脚本将在C盘创建一个叫 autoexec51JS.bat的文件
-->
</SCRIPT>
DeleteFile(文件名, 只读?) //删除一个文件,如果文件的属性是只读的话,你需要把只读值设为true<SCRIPT LANGUAGE=JavaScript>
<!--
var fso = new ActiveXObject(Scripting.FileSystemObject); //为了安全我先把要删除的autoexec.bat备份到你的D盘
var newpath = fso.CopyFile(c:\\autoexec.bat, d:\\autoexec.bat); //把C盘的autoexec.bat文件删除掉
fso.DeleteFile(c:\\autoexec.bat, true);
-->
</SCRIPT>
DeleteFolder(文件名, 只读?)//删除一个目录,如果目录的属性是只读的话,你需要把只读值设为true<SCRIPT LANGUAGE=JavaScript>
<!--
var fso = new ActiveXObject(Scripting.FileSystemObject);
fso.CopyFolder(c:\\WINDOWS\\Desktop, d:\\); //为了安全我先把你C盘的Desktop目录复制到你D盘的根目录
fso.DeleteFolder(c:\\WINDOWS\\Desktop, true); //把你的Desktop目录删除,但因为desktop是系统的东西,所以不能全部删除,但.........
-->
</SCRIPT>
DriveExists(盘符) //检查一个盘是否存在,如果存在就返会真,不存在就返回.......<SCRIPT LANGUAGE=JavaScript>
<!--
var fso = new ActiveXObject(Scripting.FileSystemObject);
hasDriveD = fso.DriveExists(d); //检查系统是否有D盘存在
hasDriveZ = fso.DriveExists(z); //检查系统是否有Z盘存在
if (hasDriveD) alert(你的系统内有一个D盘);
if (!hasDriveZ) alert(你的系统内没有Z盘);
-->
</SCRIPT>
FileExists(文件名) //检查一个文件是否存在,如果存在就返会真,不存在就返回.......<SCRIPT LANGUAGE=JavaScript>
<!--
var fso = new ActiveXObject(Scripting.FileSystemObject);
fileName = fso.FileExists(c:\\autoexec.bat);
if (fileName) alert(你在C盘中有autoexec.bat文件,按下确定后这个文件将被删除!); //开个玩笑:)
-->
</SCRIPT>
FolderExists(目录名) //检查一个目录是否存在,如果存在就返会真,不存在就返回.......<SCRIPT LANGUAGE=JavaScript>
<!--
var fso = new ActiveXObject(Scripting.FileSystemObject);
folderName = fso.FolderExists(c:\\WINDOWS\\Fonts);
if (folderName) alert(按下确定后系统的字库将被删除!); //开个玩笑:)
-->
</SCRIPT>
GetAbsolutePathName(文件对象) //返回文件对象在系统的绝对路径<SCRIPT LANGUAGE=JavaScript>
<!--
var fso = new ActiveXObject(Scripting.FileSystemObject);
pathName = fso.GetAbsolutePathName(c:\\autoexec.bat);
alert(pathName);
-->
</SCRIPT>
GetBaseName(文件对象) //返回文件对象的文件名<SCRIPT LANGUAGE=JavaScript>
<!--
var fso = new ActiveXObject(Scripting.FileSystemObject);
baseName = fso.GetBaseName(c:\\autoexec.bat); //取得autoexec.bat的文件名autoexec
alert(baseName);
-->
</SCRIPT>
GetExtensionName(文件对象) //文件的后缀<SCRIPT LANGUAGE=JavaScript>
<!--
var fso = new ActiveXObject(Scripting.FileSystemObject);
exName = fso.GetExtensionName(c:\\autoexec.bat); //取得autoexec.bat后缀bat
alert(exName);
-->
</SCRIPT>
GetParentFolderName(文件对象) //取得父级的目录名<SCRIPT LANGUAGE=JavaScript>
<!--
var fso = new ActiveXObject(Scripting.FileSystemObject);
parentName = fso.GetParentFolderName(c:\\autoexec.bat); //取得autoexec.bat的父级目录C盘
alert(parentName);
-->
</SCRIPT>
GetSpecialFolder(目录代码) //取得系统中一些特别的目录的路径,目录代码有3个分别是 0:安装Window的目录 1:系统文件目录 2:临时文件目录<SCRIPT LANGUAGE=JavaScript>
<!--
var fso = new ActiveXObject(Scripting.FileSystemObject);
tmpFolder = fso.GetSpecialFolder(2); //取得系统临时文件目录的路径 如我的是 C:\windows\temp
alert(tmpFolder);
-->
</SCRIPT>
GetTempName() //生成一个随机的临时文件对象,会以rad带头后面跟着些随机数,就好象一些软件在安装时会生成*.tmp<SCRIPT LANGUAGE=JavaScript>
<!--
var fso = new ActiveXObject(Scripting.FileSystemObject);
tmpName = fso.GetTempName(); //我在测试时就生成了radDB70E.tmp
alert(tmpName);
-->
</SCRIPT>
MoveFile(源文件, 目标文件) //把源文件移到目标文件的位置<SCRIPT LANGUAGE=JavaScript>
<!--
var fso = new ActiveXObject(Scripting.FileSystemObject);
var newpath = fso.MoveFile(c:\\autoexec.bat, d:\\autoexec.bat); //把C盘的autoexec.bat文件移移动到D盘
-->
</SCRIPT>
To Be Continue! 还有几个属性没写例子,迟点就有了,是否觉得每次都会问你是否运行很麻烦?或者........,想知道如何不用询问就运行?(不要用脚本来破坏别人的系统啊!) 请密切留意 WWW.51JS.COM

Tags:FileSystemObject 简介 应用

编辑录入:coldstar [复制链接] [打 印]
赞助商链接