mysqlに日付を保持するvarcharがあります。私はそれをに変換しようとしていますがNSDate
、私が試したことはまだ何も機能しません。NSString
frommysqlは次のようになります。
2012年8月11日午前10時17分
NSString
コンバージョンに関連するこれまでのすべての投稿NSDate
は、この文字列ではまだ機能していません。誰かが助けてくれたら...
をに変換するNSString
にはNSDate
、を使用してくださいNSDateFormatter
。
NSString *_dateString = @"August 11, 2012, 10:17 AM";
NSDateFormatter *_dateFormatter = [[NSDateFormatter alloc] init];
[_dateFormatter setDateFormat:@"MMMM dd, yyyy, HH:mm a"];
NSDate *_date = [_dateFormatter dateFromString:_dateString];
NSLog(@"raw date : %@", _date);
NSLog(@"formatted date : %@", [_dateFormatter stringFromDate:_date]);
出力NSDate
には日付が含まれます。
raw date : 2012-08-10 23:17:00 +0000
formatted date : August 11, 2012, 11:17 AM
NSDate
別の出力のために好きなようにフォーマットすることができます、それは今までですNSDate
が、日付を含むオブジェクトで作業することができます。
注:変換するときの入力日からのタイムゾーンはわからないためNSDate
、デフォルトを使用します。現在のタイムゾーンを設定すると、変換後に正しい日付が取得されます。
MySQL(サーバー)からデータを取得するためにJSONを使用し、myJSONObjectというJSONオブジェクトがあると仮定します
NOTE:
myJSONObject
NSJSONSerializationなどのフレームワークを使用してシリアル化する必要があります
いくつかの詳細な質問リンクで編集
データを2012 年 8 月 11 日 10:17 AMに変換するように依頼されましたが、私のサンプル コードは2012-08-11 10:17:..として変換しようとしました。サンプル コードを編集しました。詳細については、NSDateFormatterをご覧ください。
注意してください: NSDateComponentsmonth_from_date
を使用して変数を取得できます。こことここでいくつか質問があります..できない場合は、新しい投稿を開いてください.
NSString* dateString = [myJSONObject objectForKey:@"date"];
NSDateFormatter* fmt = [NSDateFormatter new];
[fmt setTimeZone:[NSTimeZone defaultTimeZone]];
// [fmt setDateFormat:@"yyyy-MM-dd HH:mm:ss"];
[fmt setDateFormat:@"%@ DD,YYYY, HH:mm",month_from_date];
NSDate* dateFromString = [fmt dateFromString:dateString];
NSLog("Here is date from string: %@",dateFromString);