0

ユーザーは日付を編集できるため、ユーザーのデバイスから現在の日付を取得したくありません。

time.apple.com や time.is などのサーバーから現在の日付と時刻を取得し、それを NSDate に変換したいと考えています。どのように?

4

1 に答える 1

0

URL を押すと、最初に文字列の形式で日付を取得できます (Web サービスが文字列として提供している場合)。そして、日付フォーマッタを使用して、文字列をNSDate.

例えば:

NSURL *url = [NSURL URLWithString:@"http://yourtimeurl"];
NSString *str = [[NSString alloc] initWithContentsOfURL:url usedEncoding:Nil error:Nil];

dd-MM-yyyy の形式で日付を取得していると仮定すると、

NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
dateFormatter.dateFormat =@"dd-MM-yyyy";
NSDate *date = [dateFormatter dateFromString:str];

しかし、ほとんどの場合、URL にアクセスすると、解析する必要がある json のようなデータ構造が得られる可能性があります。そして、ほとんどの場合、日付は上記の形式では返されません。しかし、今、あなたは前進する方法を知っています。適切な変更を加えます。

またinitWithContentsOfURL:、同期呼び出しです。これには を使用し、NSURLConnectionWeb サービスへの非同期呼び出しを行うことをお勧めします。

これは役に立つかもしれません: http://www.earthtools.org/webservices.htm#timezone --xmlresponse
http://www.timeapi.org/utc/now --string

于 2013-03-05T21:00:01.967 に答える