2012-05-16 36 views
0

問題是開放的,但我在網上找不到任何答案。希望它不是副本:比較兩個JSON文件的目標c

我必須從我的應用程序從Json文件中加載一些數據。每隔3秒,先前加載的所有對象都將被刪除,然後重新加載(完全重新分配)。我希望應用程序首先檢查是否有更改,並且只有在重新載入整個數據或更好的情況下才重新載入新數據。我如何檢查文件是否被修改?例如,我可以從Dropbox獲取日期並檢查文件更新版本的日期嗎?

回答

1

忽略特定數據更改的檢查,您可以在讀取文件時存儲文件的散列/校驗和,在重新加載之前,將校驗和/散列與存儲的文件進行比較。沒有改變=>沒有重新加載。

+0

有一件事:什麼是校驗/散列?我需要在谷歌上搜索什麼? – Alessandro

+0

它不會花太長時間:http://en.wikipedia.org/wiki/Checksum。 – MByD

+0

如果你有'openssl',你可以使用(我喜歡它,因爲它很快)['SHA1'](https://developer.apple.com/library/mac/#documentation/Darwin/Reference/ManPages/man3/SHA1 .3ssl.html)。 – lukecampbell

0

根據此討論,您可以獲取元數據以獲取Dropbox上的文件,並檢查元數據中的字段。 (代表修訂版。)因此,您可以跟蹤程序中的rev,並且只會在文件更改時重新加載文件。

http://forums.dropbox.com/topic.php?id=48787

當心,有一個版本較舊的元數據,但它已被棄用。 (另請參見討論。)