macOS/iOS API解説

iOS , Mac アプリケーション開発のために使われる主要フレームワークの日本語情報です。2010年代に書かれた内容です。今後更新はありません。

目次

fileAttributesAtPath:traverseLink:

ファイルパスの属性を返します
- changeFileAttributes:atPath:-(NSDictionary *)fileAttributesAtPath:(NSString *)path:
             traverseLink:(BOOL)flag:

解説

ファイルパスの属性を返します。
キー 値タイプ
● NSFileSize ファイルサイズ(byte)(NSNumber )
● NSFileModificationDate ファイル修正日(NSDate)
● NSFileOwnerAccountName 所有者名(NSString)
● NSFileGroupOwnerAccountName グループ名(NSString)
● NSFileReferenceCount ハードリンクの数(NSNumber)
● NSFileIdentifier ファイルID(NSNumber)
● NSFileDeviceIdentifier ファイルデバイスID(NSNumber)
● NSFilePosixPermissions POSIXのファイル属性(読み込み・書き込みなど)(NSNumber)
● NSFileType ファイルの種類(下記参照)(NSString)
● NSFileExtensionHidden 拡張子を隠すか(BOOLのNSNumber)
● NSFileHFSCreatorCode クリエータタイプ(unsigned longのNSNumber)
● NSFileHFSTypeCode ファイルタイプ(unsigned longのNSNumber)

【上記のNSFileType】
● NSFileTypeDirectory ディレクトリ
● NSFileTypeRegular 一般のファイル
● NSFileTypeSymbolicLink シンボリックリンク
● NSFileTypeSocket 
● NSFileTypeCharacterSpecial
● NSFileTypeBlockSpecial
● NSFileTypeUnknown 不明

【flag】
YESなら、パスがシンボリックリンクの場合リンク先ファイルの属性が返されます。
リンクが無効なら、nilが返されます。
NOならパスがシンボリックリンクの場合シンボリックリンクファイルの属性が返されます。

返り値

( NSDictionary * )

属性の辞書

引数

( NSString * )path

パス

( BOOL )flag

フラグ

クラス

NSFileManager

Instance Methods

使用可能

10.0

参照

例文

#import "MyObject.h"

@implementation MyObject

- (IBAction)myAction:(id)sender
{
//OSType *ost;
NSFileManager *myFile = [ NSFileManager defaultManager];

//開けるファイル拡張子の配列
    NSArray      *imgTypes    = [ NSArray arrayWithObject : @"tiff" ];
    //OpenPanelを作る
    NSOpenPanel  *opImage       = [ NSOpenPanel openPanel ];
    //OpenPanelの結果のボタン番号
    int		  opRet;
     
        //OpenPanelでファイル選択   
    opRet = [ opImage runModalForDirectory : NSHomeDirectory() //どこのディレクトリを出すか
                                     file : @"Pictures" //どのファイルを選択しておくか
                                    types : imgTypes ];//選べるファイルタイプ

    if ( opRet == NSOKButton ) {  // OPENPanelのボタンがOKなら


        NSLog([[myFile fileAttributesAtPath:[[ opImage filename ] stringByExpandingTildeInPath] 
                    traverseLink:YES] description]);

    }
}


@end