3

私のアプリはインターネットからファイルをダウンロードします。アプリはそれらを Documents フォルダーに保存します。アプリは iTunes 共有機能を使用し、ユーザーは iTunes を介してドキュメント フォルダーにファイルを保存できます (アプリケーションが起動されているときと、アプリが起動されていないとき)。アプリのテーブルビューの 1 つで、Documents ディレクトリのファイルを追加日 (ファイルが Documents ディレクトリに追加された日付) で並べ替えて表示したいと考えています。iOSに「追加日」のようなファイル属性はありますか? どうすれば取得できますか? これを検索しましたが、今のところ答えが見つかりません。

ダウンロードしたファイルやアプリ起動時にiTunesから追加したファイルの日付をDirectoryWatcherで保存できると思います。しかし、アプリが起動されていないときに、iTunes を介してドキュメントに保存されたファイルの「追加日」を取得する方法がわかりません。これどうやってするの?

Mac OS 10.7 の Finder に追加された日付で並べ替えがあることを知っています。彼らはどのようにそれをしますか?

ありがとうございました。

4

2 に答える 2

2

はい、NSFileManagerを使用してこれを行うことができます。属性のディクショナリを要求するためのファイルパスを指定できます。1つは変更日です。

https://developer.apple.com/library/mac/#documentation/Cocoa/Reference/Foundation/Classes/NSDictionary_Class/Reference/Reference.html#//apple_ref/occ/instm/NSDictionary/fileModificationDate

于 2013-01-18T15:13:27.760 に答える
0

ファイルの属性に追加日が含まれていないことがわかりました。Mac から iTunes Connect を介してファイルをコピーした後、アプリの作成日と変更日は変更されません (Mac の場合と同様)。また、Mac の Finder は、追加日属性を格納するために外部の sqlite データベース ~/Library/Preferences/com.apple.dock.db を使用することがわかりました。

したがって、私のニーズのために、「追加された日付」の値を保存するために、ある種の外部データベースを使用することにしました。NSUserDefaults を使用すると思います。ファイル名と inode 番号をキーとして使用します。

于 2013-01-21T12:59:48.410 に答える