問題是開放的,但我在網上找不到任何答案。希望它不是副本:比較兩個JSON文件的目標c
我必須從我的應用程序從Json文件中加載一些數據。每隔3秒,先前加載的所有對象都將被刪除,然後重新加載(完全重新分配)。我希望應用程序首先檢查是否有更改,並且只有在重新載入整個數據或更好的情況下才重新載入新數據。我如何檢查文件是否被修改?例如,我可以從Dropbox獲取日期並檢查文件更新版本的日期嗎?
問題是開放的,但我在網上找不到任何答案。希望它不是副本:比較兩個JSON文件的目標c
我必須從我的應用程序從Json文件中加載一些數據。每隔3秒,先前加載的所有對象都將被刪除,然後重新加載(完全重新分配)。我希望應用程序首先檢查是否有更改,並且只有在重新載入整個數據或更好的情況下才重新載入新數據。我如何檢查文件是否被修改?例如,我可以從Dropbox獲取日期並檢查文件更新版本的日期嗎?
忽略特定數據更改的檢查,您可以在讀取文件時存儲文件的散列/校驗和,在重新加載之前,將校驗和/散列與存儲的文件進行比較。沒有改變=>沒有重新加載。
根據此討論,您可以獲取元數據以獲取Dropbox上的文件,並檢查元數據中的轉字段。 (代表修訂版。)因此,您可以跟蹤程序中的rev,並且只會在文件更改時重新加載文件。
http://forums.dropbox.com/topic.php?id=48787
當心,有一個版本較舊的元數據,但它已被棄用。 (另請參見討論。)
有一件事:什麼是校驗/散列?我需要在谷歌上搜索什麼? – Alessandro
它不會花太長時間:http://en.wikipedia.org/wiki/Checksum。 – MByD
如果你有'openssl',你可以使用(我喜歡它,因爲它很快)['SHA1'](https://developer.apple.com/library/mac/#documentation/Darwin/Reference/ManPages/man3/SHA1 .3ssl.html)。 – lukecampbell