Instance Method インスタンスメソッド

fileAttributes(atPath:traverseLink:)

Returns a dictionary that describes the POSIX attributes of the file specified at a given. 与えられるところで指定されたファイルのPOSIX属性を記述する辞書を返します。

Declaration 宣言

func fileAttributes(atPath path: String, 
       traverseLink yorn: Bool) -> [AnyHashable : Any]?

Parameters パラメータ

path

A file path. ファイルパス。

flag

If path is not a symbolic link, this parameter has no effect. If path is a symbolic link, then: pathがシンボリックリンクでないならば、このパラメータは効果を持ちません。pathがシンボリックリンクならば、その時:

  • If true the attributes of the linked-to file are returned, or if the link points to a nonexistent file the method returns nil. trueならばそれへとリンクされたファイルの属性が返されます、またはリンクが存在しないファイルを指すならばこのメソッドはnilを返します。

  • If false, the attributes of the symbolic link are returned. falseならば、シンボリックリンクの属性が返されます。

Return Value 戻り値

An NSDictionary object that describes the POSIX attributes of the file specified at path. The keys in the dictionary are described in File Attribute Keys. If there is no item at path, returns nil. NSDictionaryオブジェクト、それはpathで指定されたファイルのPOSIX属性を記述します。辞書の中のキーは、File Attribute Keysにおいて記述されます。pathで項目がないならば、nilが返されます。

Discussion 議論

This code example gets several attributes of a file and logs them. このコード例は、あるファイルの幾つかの属性を取得して、それらを記録します。


NSFileManager *fileManager = [[NSFileManager alloc] init];
NSString *path = @"/tmp/List";
NSDictionary *fileAttributes = [fileManager fileAttributesAtPath:path traverseLink:YES];
 
if (fileAttributes != nil) {
    NSNumber *fileSize;
    NSString *fileOwner;
    NSDate *fileModDate;
    if (fileSize = [fileAttributes objectForKey:NSFileSize]) {
        NSLog(@"File size: %qi\n", [fileSize unsignedLongLongValue]);
    }
    if (fileOwner = [fileAttributes objectForKey:NSFileOwnerAccountName]) {
        NSLog(@"Owner: %@\n", fileOwner);
    }
    if (fileModDate = [fileAttributes objectForKey:NSFileModificationDate]) {
        NSLog(@"Modification date: %@\n", fileModDate);
    }
}
else {
    NSLog(@"Path (%@) is invalid.", path);
}

As a convenience, NSDictionary provides a set of methods (declared as a category in NSFileManager.h) for quickly and efficiently obtaining attribute information from the returned dictionary: fileGroupOwnerAccountName(), fileModificationDate(), fileOwnerAccountName(), filePosixPermissions(), fileSize(), fileSystemFileNumber(), fileSystemNumber(), and fileType(). For example, you could rewrite the file modification statement in the code example above as: ひとつの便宜として、NSDictionaryは一揃いのメソッド(NSFileManager.hの中のあるカテゴリとして宣言される)を返される辞書から属性情報を素早く効率的に取得するために提供します:fileGroupOwnerAccountName(), fileModificationDate(), fileOwnerAccountName(), filePosixPermissions(), fileSize(), fileSystemFileNumber(), fileSystemNumber(), そして fileType()。例えば、あなたは上のコード例のファイル修正文をこのように書き直すことができます:


if (fileModDate = [fileAttributes fileModificationDate])
    NSLog(@"Modification date: %@\n", fileModDate);

Special Considerations 特別な注意事項

Because this method does not return error information, it has been deprecated as of OS X v10.5. Use attributesOfItem(atPath:) instead. このメソッドがエラー情報を返さないことから、それはOS X v10.5現在で非推奨にされます。attributesOfItem(atPath:)を代わりに使ってください。

See Also 参照

Deprecated Methods 非推奨メソッド

Related Documentation 関連文書