LoginSignup
2
2

More than 5 years have passed since last update.

FQLのtime型データをNSDateで扱うには

Last updated at Posted at 2012-11-22

FQLで取得したtime型のデータを整形して、iOSで表示させる為の方法。ちなみに、time型はepochtimeです。

開発環境
1. Xcode 4.5.2
2. facebook SDK Ver3.1

調べてわかった事
1. NSDateはinitWithTimeIntervalSince1970を使って初期化する事ができる。これは、double型でepochtimeを引数に指定する事ができる。
2. NSStringにはdoubleValueメソッドがある。

ゆるい予想
とりあえずNSStringにデータを放り込んでしまえば、後は何とかできるのでは?

ということで、考えたのが下の方法。

NSString* date = [[NSString alloc] initWithFormat:@"%@", [[self.data objectAtIndex:indexPath.row] objectForKey:@"created_time"]];
NSDate* starTDateTime = [[NSDate alloc] initWithTimeIntervalSince1970:[date doubleValue]];
NSDateFormatter* dateFormat = [[NSDateFormatter alloc] init];
[dateFormat setDateFormat:@"yyyy/MM/dd"];

1行目 : FQLで取得したcreated_timeを引数にして、NSStringオブジェクトを生成。self.dataにはFQLで取得したデータが格納されている。
2行目 : initWithTimeIntervalSince1970でNSDateオブジェクトを生成
3,4行目 : 表示したい書式で後は適時処理。

3行目の後にFQLで取得したデータとNSDateをNSLogで表示させた結果。

FQL 1350908264
NSDate 2012-10-22 12:17:44 +000
2
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
2