跳转到内容

文件对象

Folder 对象

以平台无关的方式表示文件系统中的文件夹或目录。除非另有说明,所有属性和方法都会自动解析文件系统别名并作用于原始文件。


Folder 对象构造函数

Folder( [path] ); // 可能返回一个 File 对象
new Folder( [path] ); // 始终返回一个 Folder 对象

要创建一个 Folder 对象,可以使用 Folder 函数或 new 操作符。构造函数接受完整或部分路径名,并返回新对象。

参数类型描述
pathString可选。与此对象关联的文件夹的绝对或相对路径,以平台特定或 URI 格式指定;请参阅指定路径。对象中存储的值为绝对路径。
路径不必引用现有的文件夹。如果未提供,则生成一个临时名称。
如果路径引用现有文件:
-Folder 函数返回一个 File 对象而不是 Folder 对象。
-new 操作符返回一个不存在的同名文件夹的 Folder 对象。
!!! 警告
在 MacOS 上的 After Effects 中,如果 path.length 超过 1002,After Effects 会崩溃。
此问题已在 MacOS 10.11.6 和 After Effects 13.8 及 14.0 中报告。

Folder 类属性

这些属性作为 Folder 类的静态属性可用。无需创建实例即可访问它们。

Folder.appData

Folder.appData

描述

包含所有用户的应用程序数据的文件夹的 Folder 对象。

  • 在 Windows 中,值为 %PROGRAMDATA%(默认情况下为 C:\ProgramData
  • 在 Mac OS 中,为 /Library/Application Support

类型

Folder。只读。


Folder.appPackage

Folder.appPackage

描述

包含正在运行的应用程序的捆绑包的文件夹的 Folder 对象。

  • 在 Windows 中,例如:C:\Program Files (x86)\Adobe\Adobe ExtendScript Toolkit CC\
  • 在 Mac OS 中,例如:/Applications/Adobe ExtendScript Toolkit CC/ExtendScript Toolkit.app

类型

String。只读。


Folder.commonFiles

Folder.commonFiles

描述

包含所有程序共用的文件的文件夹的 Folder 对象。

  • 在 Windows 中,值为 %CommonProgramFiles%(默认情况下为 C:\Program Files\Common Files
  • 在 Mac OS 中,为 /Library/Application Support

类型

Folder。只读。


Folder.current

Folder.current

描述

当前文件夹的 Folder 对象。可以通过分配 Folder 对象或包含新路径名称的字符串来设置当前文件夹。

类型

Folder


Folder.desktop

Folder.desktop

描述

包含用户桌面的文件夹的 Folder 对象。

  • 在 Windows 中,为 C:\Users\[username]\Desktop
  • 在 Mac OS 中,为 ~/Desktop

类型

Folder。只读。


Folder.fs

Folder.fs

描述

文件系统的名称。

可能的值:

  • Windows,
  • Macintosh, 或
  • Unix

类型

String。只读。


Folder.myDocuments

Folder.myDocuments

描述

用户的默认文档文件夹的 Folder 对象。

  • 在 Windows 中,为 C:\Users\[username]\Documents
  • 在 Mac OS 中,为 ~/Documents

类型

Folder。只读。


Folder.startup

Folder.startup

描述

包含正在运行的应用程序的可执行映像的文件夹的 Folder 对象。

类型

Folder。只读。


Folder.system

Folder.system

描述

包含操作系统文件的文件夹的 Folder 对象。

  • 在 Windows 中,值为 %windir%(默认情况下为 C:\Windows
  • 在 Mac OS 中,为 /System

类型

Folder。只读。


Folder.temp

Folder.temp

描述

默认临时文件夹的 Folder 对象。

类型

Folder。只读。


Folder.trash

Folder.trash

描述

  • 在 Mac OS 中,包含已删除项目的文件夹的 Folder 对象。
  • 在 Windows 中,由于回收站是一个数据库而不是文件夹,因此值为 null

类型

Folder 或 null。只读。


Folder.userData

Folder.userData

描述

包含当前用户的应用程序数据的文件夹的 Folder 对象。

  • 在 Windows 中,值为 %APPDATA%(默认情况下为 C:\Users\[username]\Appdata\Roaming
  • 在 Mac OS 中,为 ~/Library/Application Support

类型

Folder。只读。


Folder 类方法

这些函数作为 Folder 类的静态方法可用。无需创建实例即可调用它们。

Folder.decode()

Folder.decode(uri)

描述

按照 RFC 2396 的要求解码指定的字符串。

所有特殊字符必须以 UTF-8 编码并存储为以百分号开头后跟两个十六进制数字的转义字符。例如,字符串 "my%20file" 解码为 "my file"。特殊字符是数值大于 127 的字符,除了以下字符:

``/ - _ . ! ~ * ' ( )``

参数

参数类型描述
uriString要解码的编码字符串。

返回

String


Folder.encode()

Folder.encode(name)

描述

按照 RFC 2396 的要求编码指定的字符串。

所有特殊字符必须以 UTF-8 编码并存储为以百分号开头后跟两个十六进制数字的转义字符。例如,字符串 "my%20file" 解码为 "my file"。特殊字符是数值大于 127 的字符,除了以下字符:

``/ - _ . ! ~ * ' ( )``

参数

参数类型描述
nameString要编码的字符串。

返回

String


Folder.isEncodingAvailable()

Folder.isEncodingAvailable(name)

描述

检查给定的编码是否可用。

参数

参数类型描述
nameString编码名称。典型值为 "ASCII""binary""UTF-8"。请参阅 文件和文件夹支持的编码名称

返回

Boolean。如果系统支持指定的编码,则返回 true,否则返回 false


Folder.selectDialog()

Folder.selectDialog([prompt])

描述

打开内置的平台特定的文件浏览对话框,并为所选文件或文件夹创建一个新的 File 或 Folder 对象。与对象方法 selectDlg() 不同,它不会预选文件夹。

参数

参数类型描述
promptString可选。如果对话框允许提示,则为提示文本。

返回

如果用户点击 OK,则返回所选文件或文件夹的 File 或 Folder 对象。

如果用户取消,则返回 null


Folder 对象属性

这些属性可用于 Folder 对象。

Folder.absoluteURI

folderObj.absoluteURI

描述

引用文件夹的完整路径名,以 URI 表示法表示。

类型

String。只读。


Folder.alias

folderObj.alias

描述

当为 true 时,对象引用文件系统别名或快捷方式。

类型

Boolean。只读。


Folder.created

folderObj.created

描述

引用文件夹的创建日期,如果对象未引用磁盘上的文件夹,则为 null

类型

Date。只读。


Folder.displayName

folderObj.displayName

描述

引用文件夹的本地化名称,不带路径。

类型

String。只读。


Folder.error

folderObj.error

描述

描述最近文件系统错误的消息;请参阅 文件访问错误消息

通常由文件系统设置,但脚本也可以设置它。设置此值会清除任何错误消息并重置已打开文件的错误位。如果没有错误,则为空字符串。

类型

String


Folder.exists

folderObj.exists

描述

当为 true 时,此对象引用文件系统中当前存在的文件夹。

类型

Boolean。只读。


Folder.fsName

folderObj.fsName

描述

引用文件夹的平台特定名称,作为完整路径名。

类型

String。只读。


Folder.fullName

folderObj.fullName

描述

引用文件夹的完整路径名,以 URI 表示法表示。

类型

String。只读。


Folder.localizedName

folderObj.localizedName

描述

引用文件的绝对 URI 的文件夹名称部分的本地化版本,不带路径规范。

类型

String。只读。


Folder.modified

folderObj.modified

描述

引用文件夹的最后修改日期,如果对象未引用磁盘上的文件夹,则为 null

类型

Date。只读。


Folder.name

folderObj.name

描述

引用文件的绝对 URI 的文件夹名称部分,不带路径规范。

类型

String。只读。


Folder.parent

folderObj.parent

描述

包含此文件夹的文件夹的 Folder 对象,如果此对象引用卷的根文件夹,则为 null

类型

Folder。只读。


Folder.path

folderObj.path

描述

引用文件夹的绝对 URI 的路径部分,不带文件夹名称。

类型

String。只读。


Folder.relativeURI

folderObj.relativeURI

描述

引用文件夹的路径名,以 URI 表示法表示,相对于当前文件夹。

类型

String。只读。


Folder 对象方法

这些函数可用于 Folder 对象。

Folder.changePath()

folderObj.changePath(path)

描述

参数

参数类型描述
pathString新路径,绝对路径或相对于当前父文件夹的相对路径。

更改引用文件夹的路径规范。

返回

Boolean。成功时返回 true


Folder.create()

folderObj.create()

描述

在此对象的路径属性指定的位置创建文件夹。

返回

Boolean。如果文件夹成功创建,则返回 true


Folder.execute()

folderObj.execute()

描述

在平台特定的文件浏览器中打开此文件夹(就像在文件浏览器中双击它一样)。

返回

Boolean。如果文件夹成功打开,则立即返回 true


Folder.getFiles()

folderObj.getFiles([mask])

描述

检索此文件夹的内容,并根据提供的掩码进行过滤。

参数

参数类型描述
maskString or Function可选。文件名的搜索掩码。
可以包含问号 (?) 和星号 (*) 通配符的字符串。默认为 "*",匹配所有文件名。
也可以是函数的名称,该函数以 File 或 Folder 对象作为其参数。
它为搜索中找到的每个文件或文件夹调用;如果返回 true,则将对象添加到返回数组中。
!!! 注意
在 Windows 中,所有别名都以 .lnk 扩展名结尾;ExtendScript 在找到时从文件名中剥离此扩展名,以保持与其他操作系统的兼容性。您可以通过提供搜索掩码 "*.lnk" 来搜索所有别名,但请注意,此类代码不可移植。

返回

返回 File 和 Folder 对象的数组,如果此对象引用的文件夹不存在,则返回 null


Folder.getRelativeURI()

folderObj.getRelativeURI([basePath])

描述

检索此文件夹相对于指定基路径或当前文件夹的路径,以 URI 表示法表示。

参数

参数类型描述
basePathString可选。相对 URI 的基路径。默认为当前文件夹。

返回