2012-02-29 8 views
2

iOSでファイルが変更されているかどうかを検出するにはどうすればよいですか?iOSでファイルが変更されているかどうかを検出するにはどうすればよいですか?

私はリアルタイムモニタリングを意味しません。なぜなら、アプリケーションがなくなっても、それはもはや検出されないからです。

私は、ファイルの属性をチェックしましたし、満足してものを見つけることができませんでした。(私は何かを逃していましたか?)

あり、おそらくいくつかのチェックサム生成ソリューションが、彼らは多くの時間が必要になります。 (アルゴリズムを生成する任意の安価なチェックサムがありますか?

答えて

1

あなたはどの属性を確認しましたか? fstat()を使用すると、ファイルのst_mtime属性を以前に格納された値と比較できるはずです。

+0

NSFileModificationDateと同じですか? – Yun

+0

それは同じかもしれませんが、明らかに 'stat'ははるかに高速です。変更日を取得するために 'stat'を使用することを示す次のような答えを参照してください:http://stackoverflow.com/a/1999553/19410 –

+0

それは明確ではありませんが、サンプルコードはObjective Cのように見えます'NSDate'(あなたがその細部に興味があるならば)。 –

2

あなたは、ファイルの更新時刻を取得するには、statreference)を使用することができます。次に、保存された値と比較することができます:

struct stat sb; 
if (stat("/path/to/file", &sb) == 0) 
{ 
    ... compare sb.st_mtimespec with stored value 

} 
else 
{ 
    ... report error 
} 

This questionはかなりあなたに近いです。

+0

NSFileModificationDateと同じですか? – Yun

+0

@Starはいそうです。 – trojanfoe

関連する問題