# FileGetAttrib

报告文件或文件夹是否为只读, 隐藏等.

    AttributeString := FileGetAttrib(Filename)

## 参数

Filename

  类型: 字符串

  目标文件名, 如果未指定绝对路径则假定在 A_WorkingDir 中. 如果省略, 则使用最内层文件循环的当前文件. 与 FileExist 和 DirExist 不同, 这必须是一个真正的文件名, 而不是一个模式.

## 返回值

类型: 字符串

函数返回文件或文件夹的属性. 这个字符串是 `RASHNDOCT`, 的子集, 其中每个字母的意思如下:

- R = READONLY(只读)
- A = ARCHIVE(存档)
- S = SYSTEM(系统)
- H = HIDDEN(隐藏)
- N = NORMAL(普通)
- D = DIRECTORY(目录)
- O = OFFLINE(离线)
- C = COMPRESSED(压缩)
- T = TEMPORARY(临时)

如果没有找到文件或文件夹, 则返回空字符串.

## 错误处理

失败时抛出 OSError.

A_LastError 被设置为操作系统 GetLastError() 函数返回的结果.

## 备注

另外, 要检索文件的 8.3 短名称, 请遵循以下示例:

    Loop Files, "C:\My Documents\Address List.txt"
        ShortPathName := A_LoopFileShortPath  ; 将产生类似于 C:\MYDOCU~1\ADDRES~1.txt 的路径

可以使用类似的方法获得 8.3 短名称对应的长名称.

## 相关

FileExist, DirExist, FileSetAttrib, FileGetTime, FileSetTime, FileGetSize, FileGetVersion, File-loop

## 示例

存储一个目录的属性字母到 OutputVar. 注意, 现有的目录总是有属性字母 D.

    OutputVar := FileGetAttrib("C:\New Folder")

检查检索的字符串中是否存在特定的属性(隐藏属性).

    if InStr(FileGetAttrib("C:\My File.txt"), "H")
        MsgBox "The file is hidden."

dftg