⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 操作文件.htm

📁 javascript编程的组件
💻 HTM
📖 第 1 页 / 共 2 页
字号:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<!-- saved from url=(0045)http://fason.nease.net/code/js/other/file.htm -->
<HTML><HEAD><TITLE>操作文件</TITLE>
<META http-equiv=Content-Type content="text/html; charset=gb2312">
<META content="MSHTML 6.00.2800.1106" name=GENERATOR>
<META content=FrontPage.Editor.Document name=ProgId>
<STYLE>TABLE {
	FONT-SIZE: 13px
}
</STYLE>
</HEAD>
<BODY>
<TABLE style="FONT-SIZE: 13px" width="90%">
  <TBODY>
  <TR>
    <TD class=a14><B>一、功能实现核心:FileSystemObject 对象</B></TD></TR></TBODY></TABLE>
<TABLE style="FONT-SIZE: 13px" width="100%">
  <TBODY>
  <TR>
    <TD 
      class=a14>其实,要在Javascript中实现文件操作功能,主要就是依靠FileSystemobject对象。在详细介绍FileSystemobject对象的各个属性和方法的使用细节前,先来看看这个对象包括哪些相关对象和集合:</TD></TR></TBODY></TABLE>
<TABLE width="100%">
  <TBODY>
  <TR>
    <TD class=a14 height=27>
      <DIV align=center><IMG height=356 src="操作文件.files/01_9_13_2a.jpg" 
      width=400></DIV></TD></TR></TBODY></TABLE>
<TABLE width="100%">
  <TBODY>
  <TR>
    <TD class=a14><B>二、FileSystemObject编程三部曲</B></TD></TR></TBODY></TABLE>
<TABLE style="FONT-SIZE: 13px" width="100%">
  <TBODY>
  <TR>
    <TD class=a14>使用FileSystemObject 对象进行编程很简单,一般要经过如下的步骤: 
      创建FileSystemObject对象、应用相关方法、访问对象相关属性 。</TD></TR></TBODY></TABLE>
<TABLE width="100%">
  <TBODY>
  <TR>
    <TD class=a14>(一)创建FileSystemObject对象</TD></TR></TBODY></TABLE>
<TABLE style="FONT-SIZE: 13px" width="100%">
  <TBODY>
  <TR>
    <TD class=a14>创建FileSystemObject对象的代码只要1行:</TD></TR></TBODY></TABLE>
<TABLE style="FONT-SIZE: 13px" width="100%">
  <TBODY>
  <TR>
    <TD class=a14>var fso = new 
  ActiveXObject("Scripting.FileSystemObject");</TD></TR></TBODY></TABLE>
<TABLE style="FONT-SIZE: 13px" width="100%">
  <TBODY>
  <TR>
    <TD class=a14>上述代码执行后,fso就成为一个FileSystemObject对象实例。</TD></TR></TBODY></TABLE>
<TABLE style="FONT-SIZE: 13px" width="100%">
  <TBODY>
  <TR>
    <TD class=a14>(二)应用相关方法</TD></TR></TBODY></TABLE>
<TABLE width="100%">
  <TBODY>
  <TR>
    <TD 
  class=a14>创建对象实例后,就可以使用对象的相关方法了。比如,使用CreateTextFile方法创建一个文本文件:</TD></TR></TBODY></TABLE>
<TABLE width="100%">
  <TBODY>
  <TR>
    <TD class=a14>var fso = new 
  ActiveXObject("Scripting.FileSystemObject");</TD></TR></TBODY></TABLE>
<TABLE width="100%">
  <TBODY>
  <TR>
    <TD class=a14>var f1 = 
  fso.createtextfile("c:\\myjstest.txt",true");</TD></TR></TBODY></TABLE>
<TABLE width="100%">
  <TBODY>
  <TR>
    <TD class=a14>(三)访问对象相关属性</TD></TR></TBODY></TABLE>
<TABLE width="100%">
  <TBODY>
  <TR>
    <TD 
      class=a14>要访问对象的相关属性,首先要建立指向对象的句柄,这就要通过get系列方法实现:GetDrive负责获取驱动器信息,GetFolder负责获取文件夹信息,GetFile负责获取文件信息。比如,指向下面的代码后,f1就成为指向文件c:\test.txt的句柄:</TD></TR></TBODY></TABLE>
<TABLE width="100%">
  <TBODY>
  <TR>
    <TD class=a14>var fso = new 
  ActiveXObject("Scripting.FileSystemObject");</TD></TR></TBODY></TABLE>
<TABLE width="100%">
  <TBODY>
  <TR>
    <TD class=a14>var f1 = 
fso.GetFile("c:\\myjstest.txt");</TD></TR></TBODY></TABLE>
<TABLE width="100%">
  <TBODY>
  <TR>
    <TD class=a14>然后,使用f1访问对象的相关属性。比如:</TD></TR></TBODY></TABLE>
<TABLE width="100%">
  <TBODY>
  <TR>
    <TD class=a14>var fso = new 
  ActiveXObject("Scripting.FileSystemObject");</TD></TR></TBODY></TABLE>
<TABLE width="100%">
  <TBODY>
  <TR>
    <TD class=a14>var f1 = 
fso.GetFile("c:\\myjstest.txt");</TD></TR></TBODY></TABLE>
<TABLE width="100%">
  <TBODY>
  <TR>
    <TD class=a14>alert("File last modified: " + 
  f1.DateLastModified);</TD></TR></TBODY></TABLE>
<TABLE width="100%">
  <TBODY>
  <TR>
    <TD class=a14>执行上面最后一句后,将显示c:\myjstest.txt的最后修改日期属性值。</TD></TR></TBODY></TABLE>
<TABLE width="100%">
  <TBODY>
  <TR>
    <TD 
      class=a14>但有一点请注意:对于使用create方法建立的对象,就不必再使用get方法获取对象句柄了,这时直接使用create方法建立的句柄名称就可以:</TD></TR></TBODY></TABLE>
<TABLE width="100%">
  <TBODY>
  <TR>
    <TD class=a14>var fso = new 
  ActiveXObject("Scripting.FileSystemObject");</TD></TR></TBODY></TABLE>
<TABLE width="100%">
  <TBODY>
  <TR>
    <TD class=a14>var f1 = 
  fso.createtextfile("c:\\myjstest.txt",true");</TD></TR></TBODY></TABLE>
<TABLE width="100%">
  <TBODY>
  <TR>
    <TD class=a14>alert("File last modified: " + 
  f1.DateLastModified);</TD></TR></TBODY></TABLE>
<TABLE width="100%">
  <TBODY>
  <TR>
    <TD class=a14><B>三、操作驱动器(Drives)</B></TD></TR></TBODY></TABLE>
<TABLE width="100%">
  <TBODY>
  <TR>
    <TD 
      class=a14>使用FileSystemObject对象来编程操作驱动器(Drives)和文件夹(Folders)很容易,这就象在Windows文件浏览器中对文件进行交互操作一样,比如:拷贝、移动文件夹,获取文件夹的属性。</TD></TR></TBODY></TABLE>
<TABLE width="100%">
  <TBODY>
  <TR>
    <TD class=a14>(一)Drives对象属性</TD></TR></TBODY></TABLE>
<TABLE width="100%">
  <TBODY>
  <TR>
    <TD class=a14>Drive对象负责收集系统中的物理或逻辑驱动器资源内容,它具有如下属性:</TD></TR></TBODY></TABLE>
<TABLE width="100%">
  <TBODY>
  <TR>
    <TD class=a14>l TotalSize:以字节(byte)为单位计算的驱动器大小。</TD></TR></TBODY></TABLE>
<TABLE width="100%">
  <TBODY>
  <TR>
    <TD class=a14>l 
  AvailableSpace或FreeSpace:以字节(byte)为单位计算的驱动器可用空间。</TD></TR></TBODY></TABLE>
<TABLE width="100%">
  <TBODY>
  <TR>
    <TD class=a14>l DriveLetter:驱动器字母。 </TD></TR></TBODY></TABLE>
<TABLE width="100%">
  <TBODY>
  <TR>
    <TD class=a14>l 
      DriveType:驱动器类型,取值为:removable(移动介质)、fixed(固定介质)、network(网络资源)、CD-ROM或者RAM盘。</TD></TR></TBODY></TABLE>
<TABLE width="100%">
  <TBODY>
  <TR>
    <TD class=a14>l SerialNumber:驱动器的系列码。</TD></TR></TBODY></TABLE>
<TABLE width="100%">
  <TBODY>
  <TR>
    <TD class=a14>l FileSystem:所在驱动器的文件系统类型,取值为FAT、FAT32和NTFS。 
</TD></TR></TBODY></TABLE>
<TABLE width="100%">
  <TBODY>
  <TR>
    <TD class=a14>l IsReady:驱动器是否可用。 </TD></TR></TBODY></TABLE>
<TABLE width="100%">
  <TBODY>
  <TR>
    <TD class=a14>l ShareName:共享名称。</TD></TR></TBODY></TABLE>
<TABLE width="100%">
  <TBODY>
  <TR>
    <TD class=a14>l VolumeName:卷标名称。</TD></TR></TBODY></TABLE>
<TABLE width="100%">
  <TBODY>
  <TR>
    <TD class=a14>l Path和RootFolder:驱动器的路径或者根目录名称。 </TD></TR></TBODY></TABLE>
<TABLE width="100%">
  <TBODY>
  <TR>
    <TD class=a14>(二)Drive对象操作例程</TD></TR></TBODY></TABLE>
<TABLE width="100%">
  <TBODY>
  <TR>
    <TD class=a14>下面的例程显示驱动器C的卷标、总容量和可用空间等信息: </TD></TR></TBODY></TABLE>
<TABLE width="100%">
  <TBODY>
  <TR>
    <TD class=a14>var fso, drv, s ="";</TD></TR></TBODY></TABLE>
<TABLE width="100%">
  <TBODY>
  <TR>
    <TD class=a14>fso = new 
  ActiveXObject("Scripting.FileSystemObject");</TD></TR></TBODY></TABLE>
<TABLE width="100%">
  <TBODY>
  <TR>
    <TD class=a14>drv = 
fso.GetDrive(fso.GetDriveName("c:\\"));</TD></TR></TBODY></TABLE>
<TABLE width="100%">
  <TBODY>
  <TR>
    <TD class=a14>s += "Drive C:" + " - ";</TD></TR></TBODY></TABLE>
<TABLE width="100%">
  <TBODY>
  <TR>
    <TD class=a14>s += drv.VolumeName + "\n";</TD></TR></TBODY></TABLE>
<TABLE width="100%">
  <TBODY>
  <TR>
    <TD class=a14>s += "Total Space: " + drv.TotalSize / 
1024;</TD></TR></TBODY></TABLE>
<TABLE width="100%">
  <TBODY>
  <TR>
    <TD class=a14>s += " Kb" + "\n"; </TD></TR></TBODY></TABLE>
<TABLE width="100%">
  <TBODY>
  <TR>
    <TD class=a14>s += "Free Space: " + drv.FreeSpace / 
1024;</TD></TR></TBODY></TABLE>
<TABLE width="100%">
  <TBODY>
  <TR>
    <TD class=a14>s += " Kb" + "\n";</TD></TR></TBODY></TABLE>
<TABLE width="100%">
  <TBODY>
  <TR>
    <TD class=a14>alert(s);</TD></TR></TBODY></TABLE>
<TABLE width="100%">
  <TBODY>
  <TR>
    <TD class=a14>执行后出现下面的信息框:</TD></TR>
  <TR>
    <TD class=a14>
      <DIV align=center><IMG height=124 src="操作文件.files/01_9_13_2b.jpg" 
      width=213></DIV></TD></TR></TBODY></TABLE>
<TABLE width="100%">
  <TBODY>
  <TR>
    <TD class=a14><B>四、操作文件夹(Folders)</B></TD></TR></TBODY></TABLE>
<TABLE width="100%">
  <TBODY>
  <TR>
    <TD class=a14>涉及到文件夹的操作包括创建、移动、删除以及获取相关属性。</TD></TR></TBODY></TABLE>
<TABLE width="100%">
  <TBODY>
  <TR>
    <TD class=a14>(一) Folder对象的相关属性和方法列表 </TD></TR></TBODY></TABLE>
<TABLE width="100%">
  <TBODY>
  <TR>
    <TD class=a14>
      <DIV align=center><IMG height=468 src="操作文件.files/01_9_13_2c.jpg" 
      width=400></DIV></TD></TR></TBODY></TABLE>
<TABLE width="100%">
  <TBODY>
  <TR>
    <TD class=a14>(二)Folder对象操作例程</TD></TR></TBODY></TABLE>
<TABLE width="100%">
  <TBODY>
  <TR>
    <TD class=a14>下面的例程将练习获取父文件夹名称、创建文件夹、删除文件夹、判断是否为根目录等操作: 
</TD></TR></TBODY></TABLE>
<TABLE width="100%">
  <TBODY>
  <TR>
    <TD class=a14>var fso, fldr, s = "";</TD></TR></TBODY></TABLE>
<TABLE width="100%">
  <TBODY>
  <TR>
    <TD class=a14>// 创建FileSystemObject对象实例</TD></TR></TBODY></TABLE>
<TABLE width="100%">
  <TBODY>
  <TR>
    <TD class=a14>fso = new 
  ActiveXObject("Scripting.FileSystemObject");</TD></TR></TBODY></TABLE>
<TABLE width="100%">
  <TBODY>
  <TR>
    <TD class=a14>// 获取Drive 对象</TD></TR></TBODY></TABLE>
<TABLE width="100%">
  <TBODY>
  <TR>
    <TD class=a14>fldr = fso.GetFolder("c:\\");</TD></TR></TBODY></TABLE>
<TABLE width="100%">
  <TBODY>
  <TR>
    <TD class=a14>// 显示父目录名称</TD></TR></TBODY></TABLE>
<TABLE width="100%">
  <TBODY>
  <TR>
    <TD class=a14>alert("Parent folder name is: " + fldr + 
"\n");</TD></TR></TBODY></TABLE>
<TABLE width="100%">
  <TBODY>
  <TR>
    <TD class=a14>// 显示所在drive名称</TD></TR></TBODY></TABLE>
<TABLE width="100%">
  <TBODY>
  <TR>
    <TD class=a14>alert("Contained on drive " + fldr.Drive + 
  "\n");</TD></TR></TBODY></TABLE>
<TABLE width="100%">
  <TBODY>
  <TR>
    <TD class=a14>// 判断是否为根目录</TD></TR></TBODY></TABLE>
<TABLE width="100%">
  <TBODY>
  <TR>
    <TD class=a14>if (fldr.IsRootFolder)</TD></TR></TBODY></TABLE>
<TABLE width="100%">
  <TBODY>
  <TR>
    <TD class=a14>alert("This is the root folder.");</TD></TR></TBODY></TABLE>
<TABLE width="100%">
  <TBODY>
  <TR>
    <TD class=a14>else</TD></TR></TBODY></TABLE>
<TABLE width="100%">
  <TBODY>
  <TR>
    <TD class=a14>alert("This folder isn't a root 
folder.");</TD></TR></TBODY></TABLE>
<TABLE width="100%">
  <TBODY>
  <TR>
    <TD class=a14>alert("\n\n");</TD></TR></TBODY></TABLE>
<TABLE width="100%">
  <TBODY>
  <TR>
    <TD class=a14>// 创建新文件夹</TD></TR></TBODY></TABLE>
<TABLE width="100%">
  <TBODY>
  <TR>
    <TD class=a14>fso.CreateFolder ("C:\\Bogus");</TD></TR></TBODY></TABLE>
<TABLE width="100%">
  <TBODY>
  <TR>
    <TD class=a14>alert("Created folder C:\\Bogus" + 
"\n");</TD></TR></TBODY></TABLE>
<TABLE width="100%">
  <TBODY>
  <TR>
    <TD class=a14>// 显示文件夹基础名称,不包含路径名</TD></TR></TBODY></TABLE>
<TABLE width="100%">
  <TBODY>
  <TR>
    <TD class=a14>alert("Basename = " + fso.GetBaseName("c:\\bogus") + 
    "\n");</TD></TR></TBODY></TABLE>
<TABLE width="100%">
  <TBODY>
  <TR>
    <TD class=a14>// 删除创建的文件夹</TD></TR></TBODY></TABLE>
<TABLE width="100%">
  <TBODY>
  <TR>
    <TD class=a14>fso.DeleteFolder ("C:\\Bogus");</TD></TR></TBODY></TABLE>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -