`
datuo
  • 浏览: 82139 次
  • 性别: Icon_minigender_1
  • 来自: 成都
社区版块
存档分类
最新评论

JS FileSystemObject 对象使用

阅读更多

FileSystemObject 对象

FileSystemObject(FSO) 对象模式包含下面的对象和集合。

对象/集合 描述
FileSystemObject 主对象。包含用来创建、删除和获得有关信息,以及通常用来操作驱动器、文件夹和文件的方法和属性。和该对象相关联的许多方法,与其他 FSO 对象中的方法完全相似;它们是为了方便才被提供的。
Drive 对象。包含用来收集信息的方法和属性,这些信息是关于连接在系统上的驱动器的,如驱动器的共享名和它有多少可用空间。请注意,"drive" 并非必须是硬盘,也可以是 CD-ROM 驱动器,RAM 磁盘等等。并非必须把驱动器实物地连接到系统上;它也可以通过网络在逻辑上被连接起来。
Drives 集合。提供驱动器的列表,这些驱动器实物地或在逻辑上与系统相连接。Drives 集合包括所有驱动器,与类型无关。要可移动的媒体驱动器在该集合中显现,不必把媒体插入到驱动器中。
File 对象。包含用来创建、删除或移动文件的方法和属性。也用来向系统询问文件名、路径和多种其他属性。
Files 集合。提供包含在文件夹内的所有文件的列表。
Folder 对象。包含用来创建、删除或移动文件夹的方法和属性。也用来向系统询问文件夹名、路径和多种其他属性。
Folders 集合。提供在 Folder 内的所有文件夹的列表。
TextStream 对象。用来读写文本文件。

 

创建对象: var fso = new ActiveXObject("Scripting.FileSystemObject");
对象方法:创建文件CreateTextFile("d:\\text.txt")
                 一种: f1 = fso.CreateTextFile("c:\\testfile.txt", true);
                 二种: ts = fso.OpenTextFile("c:\\test.txt", ForWriting, true);
                 三种: fso.CreateTextFile ("c:\\test1.txt");
                                     f1 = fso.GetFile("c:\\test1.txt");
                                    ts = f1.OpenAsTextStream(ForWriting, true);
               创建目录CreateFolder('d:\\ddd')
              其它方法    GetDrive , GetFolder ,  GetFile  

 

可以用 Drive 对象来获得有关各种驱动器的信息,这些驱动器是实物地或通过网络连接到系统上的。它的属性可以用来获得下面的信息内容:

  • 驱动器的总容量,以字节为单位(TotalSize 属性)
  • 驱动器的可用空间是多少,以字节为单位(AvailableSpaceFreeSpace 属性)
  • 哪个号被赋给了该驱动器(DriveLetter 属性)
  • 驱动器的类型是什么,如可移动的、固定的、网络的、CD-ROM 或 RAM 磁盘(DriveType 属性)
  • 驱动器的序列号(SerialNumber 属性)
  • 驱动器使用的文件系统类型,如 FAT、FAT32、NTFS 等等(FileSystem 属性)
  • 驱动器是否可以使用(IsReady 属性)
  • 共享和/或卷的名字(ShareName 和 VolumeName 属性)
  • 驱动器的路径或根文件夹(PathRootFolder 属性)
  • function ShowDriveInfo1(drvPath)
    {
       var fso, drv, s ="";
       fso = new ActiveXObject("Scripting.FileSystemObject");
       drv = fso.GetDrive(fso.GetDriveName(drvPath));
       s += "Drive " + drvPath.toUpperCase()+ " - ";
       s += drv.VolumeName + "<br>";
       s += "Total Space: " + drv.TotalSize / 1024;
       s += " Kb" + "<br>";
       s += "Free Space: " + drv.FreeSpace / 1024;
       s += " Kb" + "<br>";
       Response.Write(s);
    }

处理文件夹

在下面的表中,描述了普通的文件夹任务和执行它们的方法。

任务 方法
创建文件夹。 FileSystemObject.CreateFolder
删除文件夹。 Folder.Delete 或 FileSystemObject.DeleteFolder
移动文件夹。 Folder.Move 或 FileSystemObject.MoveFolder
复制文件夹。 Folder.Copy 或 FileSystemObject.CopyFolder
检索文件夹的名字。 Folder.Name
如果文件夹在驱动器上存在,则找出它。 FileSystemObject.FolderExists
获得现有 Folder 对象的实例。 FileSystemObject.GetFolder
找出文件夹的父文件夹名。 FileSystemObject.GetParentFolderName
找出系统文件夹的路径。 FileSystemObject.GetSpecialFolder

function ShowFolderInfo()
{
   var fso, fldr, s = "";
   // 获得 FileSystemObject 的实例。
   fso = new ActiveXObject("Scripting.FileSystemObject");
   // 获得 Drive 对象。
   fldr = fso.GetFolder("c:");
   // 打印父文件夹名。
   Response.Write("Parent folder name is: " + fldr + "<br>");
   // 打印驱动器名字。
   Response.Write("Contained on drive " + fldr.Drive + "<br>");
   // 打印根文件名。
   if (fldr.IsRootFolder)
      Response.Write("This is the root folder.");
   else
      Response.Write("This folder isn't a root folder.");
   Response.Write("<br><br>");
   //  FileSystemObject 对象创建新的文件夹。
   fso.CreateFolder ("C:\\Bogus");
   Response.Write("Created folder C:\\Bogus" + "<br>");
   // 打印文件夹的基本名。
   Response.Write("Basename = " + fso.GetBaseName("c:\\bogus") + "<br>");
   // 删除新创建的文件夹。
   fso.DeleteFolder ("C:\\Bogus");
   Response.Write("Deleted folder C:\\Bogus" + "<br>");
}

添加数据到文件中

一旦创建了文本文件,使用下面的三个步骤向文件添加数据:

打开文本文件。

写入数据。

关闭文件。

要打开现有的文件,则使用 FileSystemObject 对象的 OpenTextFile 方法或 File 对象的 OpenAsTextStream 方法。

要写数据到打开的文本文件,则根据下表所述任务使用 TextStream 对象的 Write、WriteLine 或 WriteBlankLines 方法。

任务方法
向打开的文本文件写数据,不用后续一个新行字符。Write
向打开的文本文件写数据,后续一个新行字符。WriteLine
向打开的文本文件写一个或多个空白行。WriteBlankLines

要关闭一个打开的文件,则使用 TextStream 对象的 Close 方法。

注意  新行字符包含一个或几个字符(取决于操作系统),以把光标移动到下一行的开始位置(回车/换行)。注意某些字符串末尾可能已经有这个非打印字符了。

function CreateFile() {    var fso, tf;    fso = new ActiveXObject("Scripting.FileSystemObject");    tf = fso.CreateTextFile("c:\\testfile.txt", true);    // 写一行,并且带有新行字符。    tf.WriteLine("Testing 1, 2, 3.") ;    // 向文件写三个新行字符。    tf.WriteBlankLines(3) ;    // 写一行。    tf.Write ("This is a test.");    tf.Close(); }

读取文件

要从文本文件读取数据,则使用 TextStream 对象的 ReadReadLineReadAll 方法。下表描述了不同的任务应使用哪种方法。

任务方法
从文件读取指定数量的字符。Read
读取一整行(一直到但不包括新行字符)。ReadLine
读取文本文件的整个内容。ReadAll

如果使用 ReadReadLine 方法,并且想跳过数据的特殊部分,则使用 SkipSkipLine 方法。read 方法的结果文本存在一个字符串中,该字符串可以显示在一个控件中,也可以用字符串函数(如 LeftRightMid)来分析,连接等等。

function ReadFiles() {    var fso, f1, ts, s;    var ForReading = 1;    fso = new ActiveXObject("Scripting.FileSystemObject");    f1 = fso.CreateTextFile("c:\\testfile.txt", true);    // 写一行。    Response.Write("Writing file <br>");    f1.WriteLine("Hello World");    f1.WriteBlankLines(1);    f1.Close();    // 读取文件的内容。    Response.Write("Reading file <br>");    ts = fso.OpenTextFile("c:\\testfile.txt", ForReading);    s = ts.ReadLine();    Response.Write("File contents = '" + s + "'");    ts.Close(); }

移动、复制和删除文件

FSO 对象模式各有两种方法移动、复制和删除文件,如下表所述。

任务方法
移动文件File.Move 或 FileSystemObject.MoveFile
复制文件File.Copy 或 FileSystemObject.CopyFile
删除文件File.Delete 或 FileSystemObject.DeleteFile

下面的 VBScript 示例,在驱动器 C 的根目录中创建一个文本文件,向其中写一些信息,然后把它移动到 \tmp 目录中,并在 \temp 中做一个备份,最后把它们从两个目录中删掉。

function ManipFiles()
{
   var fso, f1, f2, s;
   fso = new ActiveXObject("Scripting.FileSystemObject");
   f1 = fso.CreateTextFile("c:\\testfile.txt", true);
   Response.Write("Writing file <br>");
   // 写一行。
   f1.Write("This is a test.");
   // 关闭文件。
   f1.Close();
   Response.Write("Moving file to c:\\tmp <br>");
   // 获取 C 的根目录(C:\)中的文件的句柄。
   f2 = fso.GetFile("c:\\testfile.txt");
   // 把文件移动到 \tmp 目录。
   f2.Move ("c:\\tmp\\testfile.txt");
   Response.Write("Copying file to c:\\temp <br>");
   // 把文件复制到 \temp 目录。
   f2.Copy ("c:\\temp\\testfile.txt");
   Response.Write("Deleting files <br>");
   // 获得文件当前位置的句柄。
   f2 = fso.GetFile("c:\\tmp\\testfile.txt");
   f3 = fso.GetFile("c:\\temp\\testfile.txt");
   // 删除文件。
   f2.Delete();
   f3.Delete();
   Response.Write("All done!");
}
<!---->
评论

相关推荐

    Scripting.FileSystemObject对象的详细技巧指南

    ### Scripting.FileSystemObject对象的详细技巧指南 #### 一、概述 `Scripting.FileSystemObject`对象是脚本运行时库中的一个重要组成部分,主要用于提供对计算机文件系统的访问能力。这一对象适用于服务器端的ASP...

    javascript实现FileSystemObject(FSO)读取文件系统的驱动器信息

    因此,在开发跨平台应用时,应当考虑使用Node.js的`fs`模块或其他兼容性的库。 总结,通过JavaScript中的FileSystemObject,我们可以实现对Windows文件系统的访问,包括读取驱动器信息。但需要注意的是,这些功能...

    JavaScript使用FileSystemObject对象写入文本文件内容的方法

    主要介绍了JavaScript使用FileSystemObject对象写入文本文件内容的方法,实例分析了javascript使用ActiveXObject的技巧与常见问题的解决方法,具有一定参考借鉴价值,需要的朋友可以参考下

    FileSystemObject

    `FileSystemObject`(简称FSO)是Microsoft在Windows操作系统中提供的一种用于操作文件系统(如文件和文件夹)的对象模型。通过使用FSO,开发者可以在脚本中执行一系列文件系统操作,如创建、删除文件/文件夹、读写...

    js文件操作使用大全

    JS 文件操作使用大全是指在 JavaScript 中使用 FileSystemObject 对象来实现文件操作功能的相关知识点。本文将详细介绍创建、修改、打开等文件操作的使用方法。 一、FileSystemObject 对象 FileSystemObject 对象...

    javascript读取本地文件和目录方法详解

    JavaScript是网页制作中离不开的脚本语言,依靠它,一个网页的内容才生动活泼、富有朝气。但也许你还没有发现并应用它的...在详细介绍FileSystemobject对象的各个属性和方法的使用细节前,先来看看这个对象包括哪些相关

    FileSystemObject在网页中操作本地文件

    FileSystemObject(FSO)是微软ActiveX对象模型的一部分,它允许在JavaScript中对本地文件系统进行操作。在网页环境中,通常我们使用JavaScript处理客户端的数据和交互,但出于安全考虑,JavaScript在浏览器中不能...

    FileSystemObject 对象

    FileSystemObject(FSO)对象是Microsoft的脚本...现在更推荐使用浏览器提供的File API或者Node.js环境下的fs模块来处理文件操作。尽管如此,了解FSO对象对于理解早期的Windows脚本和服务器端脚本技术仍然很有价值。

    COM对象调用JS接口.rar

    综上所述,"COM对象调用JS接口"涉及到的核心技术包括JavaScript的ActiveXObject接口、COM组件的使用以及跨语言通信的实现。了解并熟练掌握这些知识点,对于进行老版本IE浏览器下的Web开发或者理解跨语言组件交互具有...

    JavaScript文件流操作.doc

    然而,在某些特定环境中,如服务器端JavaScript(如Node.js)或一些旧版的IE插件开发场景下,了解如何使用`FileSystemObject`进行文件操作仍然具有一定的价值。 #### 二、`FileSystemObject`编程基础 使用`...

    《JavaScript 语言参考》中文版

    FileSystemObject 对象模型 FileSystemObject 和 Scripting FileSystemObject 对象 设计FileSystemObject 处理驱动器和文件夹 处理文件 FileSystemObject 示例代码 Scripting 运行时库参考 脚本运行时...

    易语言脚本组件FileSystemObject取文件目录尺寸源码.rar

    "FileSystemObject"(FSO)是Windows脚本宿主中的一个对象,常用于文件和文件夹的操作。在这个特定的案例中,我们关注的是如何使用易语言和FSO来获取文件目录的尺寸。 首先,我们需要了解`FileSystemObject`的核心...

    Javascript—-文件操作

    Javascript—-文件操作 一、功能实现核心:FileSystemObject 对象 要在javascript中实现文件操作功能,主要就是依靠FileSystemobject对象。 二、FileSystemObject编程 使用FileSystemObject 对象进行编程很简单...

    Javascript语言参考大全

    本篇文章将深入探讨JavaScript语言的核心概念、语法以及JScript教程,同时还会提及fileSystemObject对象的相关知识。 首先,JavaScript语法是理解编程的基础。它采用C语言风格,包含变量声明、数据类型(如字符串、...

    javascript完全学习手册1 源码

    11.2.1 FileSystemObject对象 319 11.2.2 Drive对象 324 11.2.3 Folder对象 327 11.2.4 File对象 331 11.2.5 资源管理器 337 第12章 JavaScript与Ajax 348 12.1 Ajax概述 348 12.1.1 Ajax运行机制 348 12.1.2 Ajax...

    javascript操作文件.doc

    综上所述,JavaScript的文件操作主要依赖于FileSystemObject对象及其相关方法和属性,通过这个对象,开发者可以在JavaScript中实现与操作系统底层文件系统交互的能力。然而,需要注意的是,这些功能在不同的环境(如...

    JS文件使用大全.pdf

    ### JS文件使用大全——利用FileSystemObject对象实现文件操作 #### 一、概述 在JavaScript中,如果想要在客户端实现文件的读写等操作,通常情况下是受限于浏览器的安全策略而无法直接实现。不过,在特定环境下,...

Global site tag (gtag.js) - Google Analytics