ファイルのサイズを決定するために、私は常に以下を使用してきました。
NSDictionary *fileAttributes = [[NSFileManager defaultManager] attributesOfItemAtPath:path error:nil];
unsigned long long size = [fileAttributes fileSize];
ただし、このメソッドattributesOfItemAtPath:error:
はシンボリック リンクをトラバースしません。Appleはそう提案します:
パスの項目がシンボリック リンクの場合 (つまり
NSFileType
、属性辞書のキーの値が である場合)、メソッドを使用して、リンクが指す項目のパスを取得NSFileTypeSymbolicLink
できます。destinationOfSymbolicLinkAtPath:error:
サンドボックスが指定されたファイルへのアクセスを妨げない場合、これは素晴らしいことです:
file-read-xattr を拒否
/path/to/the/original/file
それで、私の質問は次のとおりです。OS Xサンドボックスの下のシンボリックリンクが指すファイルのサイズを取得するにはどうすればよいですか?