Javascript 对本地文件操作
转:iwannawi
Javascript 对本地文件操作
- 001 Set fso = Server.CreateObject("Scripting.FileSystemObject") 定义FSO对象
- 002 fso.CreateFolder(Server.MapPath(folder)) 得到路径
- 003 Set fout = fso.CreateTextFile(Server.MapPath(filepath)) 定义创建对象
- 004 fout.WriteLine mb_code 创建文件夹。。
- 005 fout.close 关闭对象
- 006
- 007 下面是一些例子。。
- 008 提示:刚一开始看到有这样的功能,我也受骗了,以为真的可以通过浏览器在访问者的硬盘上创建文件,因为我开始试了一下真的可以,不信你把下面这段代码COPY到一个HTML文件当中再运行一下!
- 009 <script language="JavaScript">
- 010 <!--
- 011 var fso = new ActiveXObject("Scripting.FileSystemObject");
- 012 fso.DeleteFile("c:\\autoexec.bat", true); //请注意啊!把autoexec.bat改为你C盘中的其它文件名,你不改也可以!先把autoexec.bat备份啊!
- 013 -->
- 014 </script>
- 015
- 016 是不是发现你C盘的Autoexec.bat文件不见呢?呵呵
- 017
- 018 其实当那个文件运行时IE会提醒你当前使用的ActiveX控件不安全,询问你是否运行,但由于你和我一样迫切想试试究竟效果如何,因此你会毫不犹疑的按下 [确定] .... 其实这是使用了FileSystemObject来实现的,要了解更详细的用法与例子的话,点这里下载 JScript的中文说明文档 或者买本 <<深入学习:JavaScript开发与实例>> 也可以看看无忧脚本整理的例子,让大家学习学习.
- 019
- 020 让我们先来看看有什么属性与函数可用,后面会对部分函数做些小例子
- 021 方法或者属性 描述
- 022 BuildPath()
- 023 生成一个文件路径
- 024 CopyFile() 复制文件
- 025 CopyFolder() 复制目录
- 026 CreateFolder() 创建新目录
- 027 CreateTextFile() 生成一个文件
- 028 DeleteFile() 删除一个文件
- 029 DeleteFolder() 删除一个目录
- 030 DriveExists() 检验盘符是否存在
- 031 Drives 返回盘符的集合
- 032 FileExists() 检验文件是否存在
- 033 FolderExists 检验一个目录是否存在
- 034 GetAbsolutePathName() 取得一个文件的绝对路径
- 035 GetBaseName() 取得文件名
- 036 GetDrive() 取得盘符名
- 037 GetDriveName() 取得盘符名
- 038 GetExtensionName() 取得文件的后缀
- 039 GetFile() 生成文件对象
- 040 GetFileName() 取得文件名
- 041 GetFolder() 取得目录对象
- 042 GetParentFolderName 取得文件或目录的父目录名
- 043 GetSpecialFolder() 取得特殊的目录名
- 044 GetTempName() 生成一个临时文件对象
- 045 MoveFile() 移动文件
- 046 MoveFolder() 移动目录
- 047 OpenTextFile()
- 048 打开一个文件流
- 049
- 050 实例说明
- 051
- 052 BuildPath(路径,文件名) //这个方法会对给定的路径加上文件,并自动加上分界符
- 053 <SCRIPT LANGUAGE="JavaScript">
- 054 <!--
- 055 var fso = new ActiveXObject("Scripting.FileSystemObject");
- 056 var newpath = fso.BuildPath("c:\\tmp", "51js.txt"); //生成 c:\tmp\51js.txt的路径
- 057 alert(newpath);
- 058 -->
- 059 </SCRIPT>
- 060
- 061 CopyFile(源文件, 目标文件, 覆盖) //复制源文件到目标文件,当覆盖值为true时,如果目标文件存在会把文件覆盖
- 062 <SCRIPT LANGUAGE="JavaScript">
- 063 <!--
- 064 var fso = new ActiveXObject("Scripting.FileSystemObject");
- 065 var newpath = fso.CopyFile("c:\\autoexec.bat", "d:\\autoexec.bak");
- 066 -->
- 067 </SCRIPT>
- 068
- 069 CopyFolder(对象目录,目标目录 ,覆盖) //复制对象目录到目标目录,当覆盖为true时,如果目标目录存在会把文件覆盖
- 070 <SCRIPT LANGUAGE="JavaScript">
- 071 <!--
- 072 var fso = new ActiveXObject("Scripting.FileSystemObject");
- 073 fso.CopyFolder("c:\\WINDOWS\\Desktop", "d:\\"); //把C盘的Desktop目录复制到D盘的根目录
- 074 -->
- 075 </SCRIPT>
- 076
- 077 CreateFolder(目录名) //创建一个新的目录
- 078 <SCRIPT LANGUAGE="JavaScript">
- 079 <!--
- 080 var fso = new ActiveXObject("Scripting.FileSystemObject");
- 081 var newFolderName = fso.CreateFolder("c:\\51JS"); //在C盘上创建一个51JS的目录
- 082 -->
- 083 </SCRIPT>
- 084
- 085 CreateTextFile(文件名, 覆盖) //创建一个新的文件,如果此文件已经存在,你需要把覆盖值定为true
- 086 <SCRIPT LANGUAGE="JavaScript">
- 087 <!--
- 088 var fso = new ActiveXObject("Scripting.FileSystemObject");
- 089 var newFileObject = fso.CreateTextFile("c:\\autoexec51JS.bat", true); //脚本将在C盘创建一个叫 autoexec51JS.bat的文件
- 090 -->
- 091 </SCRIPT>
- 092
- 093 DeleteFile(文件名, 只读?) //删除一个文件,如果文件的属性是只读的话,你需要把只读值设为true
- 094 <SCRIPT LANGUAGE="JavaScript">
- 095 <!--
- 096 var fso = new ActiveXObject("Scripting.FileSystemObject"); //为了安全我先把要删除的autoexec.bat备份到你的D盘
- 097 var newpath = fso.CopyFile("c:\\autoexec.bat", "d:\\autoexec.bat"); //把C盘的autoexec.bat文件删除掉
- 098 fso.DeleteFile("c:\\autoexec.bat", true);
- 099 -->
- 100 </SCRIPT>
- 101
- 102 DeleteFolder(文件名, 只读?)//删除一个目录,如果目录的属性是只读的话,你需要把只读值设为true
- 103 <SCRIPT LANGUAGE="JavaScript">
- 104 <!--
- 105 var fso = new ActiveXObject("Scripting.FileSystemObject");
- 106 fso.CopyFolder("c:\\WINDOWS\\Desktop", "d:\\"); //为了安全我先把你C盘的Desktop目录复制到你D盘的根目录
- 107 fso.DeleteFolder("c:\\WINDOWS\\Desktop", true); //把你的Desktop目录删除,但因为desktop是系统的东西,所以不能全部删除,但.........
- 108 -->
- 109 </SCRIPT>
- 110
- 111 DriveExists(盘符) //检查一个盘是否存在,如果存在就返会真,不存在就返回.......
- 112 <SCRIPT LANGUAGE="JavaScript">
- 113 <!--
- 114 var fso = new ActiveXObject("Scripting.FileSystemObject");
- 115 hasDriveD = fso.DriveExists("d"); //检查系统是否有D盘存在
- 116 hasDriveZ = fso.DriveExists("z"); //检查系统是否有Z盘存在
- 117 if (hasDriveD) alert("你的系统内有一个D盘");
- 118 if (!hasDriveZ) alert("你的系统内没有Z盘");
- 119 -->
- 120 </SCRIPT>
- 121
- 122 FileExists(文件名) //检查一个文件是否存在,如果存在就返会真,不存在就返回.......
- 123 <SCRIPT LANGUAGE="JavaScript">
- 124 <!--
- 125 var fso = new ActiveXObject("Scripting.FileSystemObject");
- 126 fileName = fso.FileExists("c:\\autoexec.bat");
- 127 if (fileName) alert("你在C盘中有autoexec.bat文件,按下确定后这个文件将被删除!"); //开个玩笑:)
- 128 -->
- 129 </SCRIPT>
- 130
- 131 FolderExists(目录名) //检查一个目录是否存在,如果存在就返会真,不存在就返回.......
- 132 <SCRIPT LANGUAGE="JavaScript">
- 133 <!--
- 134 var fso = new ActiveXObject("Scripting.FileSystemObject");
- 135 folderName = fso.FolderExists("c:\\WINDOWS\\Fonts");
- 136 if (folderName) alert("按下确定后系统的字库将被删除!"); //开个玩笑:)
- 137 -->
- 138 </SCRIPT>
- 139
- 140 GetAbsolutePathName(文件对象) //返回文件对象在系统的绝对路径
- 141 <SCRIPT LANGUAGE="JavaScript">
- 142 <!--
- 143 var fso = new ActiveXObject("Scripting.FileSystemObject");
- 144 pathName = fso.GetAbsolutePathName("c:\\autoexec.bat");
- 145 alert(pathName);
- 146 -->
- 147 </SCRIPT>
- 148
- 149 GetBaseName(文件对象) //返回文件对象的文件名
- 150 <SCRIPT LANGUAGE="JavaScript">
- 151 <!--
- 152 var fso = new ActiveXObject("Scripting.FileSystemObject");
- 153 baseName = fso.GetBaseName("c:\\autoexec.bat"); //取得autoexec.bat的文件名autoexec
- 154 alert(baseName);
- 155 -->
- 156 </SCRIPT>
- 157
- 158 GetExtensionName(文件对象) //文件的后缀
- 159 <SCRIPT LANGUAGE="JavaScript">
- 160 <!--
- 161 var fso = new ActiveXObject("Scripting.FileSystemObject");
- 162 exName = fso.GetExtensionName("c:\\autoexec.bat"); //取得autoexec.bat后缀bat
- 163 alert(exName);
- 164 -->
- 165 </SCRIPT>
- 166
- 167 GetParentFolderName(文件对象) //取得父级的目录名
- 168 <SCRIPT LANGUAGE="JavaScript">
- 169 <!--
- 170 var fso = new ActiveXObject("Scripting.FileSystemObject");
- 171 parentName = fso.GetParentFolderName("c:\\autoexec.bat"); //取得autoexec.bat的父级目录C盘
- 172 alert(parentName);
- 173 -->
- 174 </SCRIPT>
- 175
- 176 GetSpecialFolder(目录代码) //取得系统中一些特别的目录的路径,目录代码有3个分别是 0:安装Window的目录 1:系统文件目录 2:临时文件目录
- 177 <SCRIPT LANGUAGE="JavaScript">
- 178 <!--
- 179 var fso = new ActiveXObject("Scripting.FileSystemObject");
- 180 tmpFolder = fso.GetSpecialFolder(2); //取得系统临时文件目录的路径 如我的是 C:\windows\temp
- 181 alert(tmpFolder);
- 182 -->
- 183 </SCRIPT>
- 184
- 185 GetTempName() //生成一个随机的临时文件对象,会以rad带头后面跟着些随机数,就好象一些软件在安装时会生成*.tmp
- 186 <SCRIPT LANGUAGE="JavaScript">
- 187 <!--
- 188 var fso = new ActiveXObject("Scripting.FileSystemObject");
- 189 tmpName = fso.GetTempName(); //我在测试时就生成了radDB70E.tmp
- 190 alert(tmpName);
- 191 -->
- 192 </SCRIPT>
- 193
- 194 MoveFile(源文件, 目标文件) //把源文件移到目标文件的位置
- 195 <SCRIPT LANGUAGE="JavaScript">
- 196 <!--
- 197 var fso = new ActiveXObject("Scripting.FileSystemObject");
- 198 var newpath = fso.MoveFile("c:\\autoexec.bat", "d:\\autoexec.bat"); //把C盘的autoexec.bat文件移移动到D盘
- 199 -->
- 200 </SCRIPT>
复制代码
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论