NSDate倒數計時的小心得
關於NSDate用法,常配合NSDateFormatter使用,一般我們想到要計算現在到幾天後過期,一般直覺就是取現在時間,然後把他用TimeInterval1970時間,再去加上多少杪來算時間,再去比較時間大小。
這在一般單純需要計算時,是蠻有用的,但是如果你是要處理一些檔案,設定幾天後到期,
例如你把下載的資料或是圖片存到某一資料夾,你設第三天後過期,又不想一次把整個資料夾全砍掉,現在提供一種方法給大家參考。
在檔案管理的API中,attributesOfItemAtPath
這個方法可以取得檔案的資訊,
你可以這樣寫
|
|
filePath你可以隨便給個檔案然後去Print-Object 一下attrs,
會發現有很多屬性,諸如: NSFileSize , NSFileModificationDate 等等
你可以取檔案中的Modify Date,然後去跟你設定的時間去做比較,
取出來是NSDate格式~你直覺想到可以轉成TimeInterval去比較,現在有個簡單方法
NSDate 有個屬性叫
- (NSDate *)earlierDate:(NSDate *)anotherDate;
- (NSDate *)laterDate:(NSDate *)anotherDate;
earlierDate是輸入一個NSDate時間,取比較早的時間返回,用法如下
|
|
這作法跟轉成TimeInterval 去比大小是一樣的意思,不過既然內建有好用的api 那就用吧。
程式碼也縮短不少呢