[英]Convert static time to NSDate returns older date
NSDate *date = [NSDate date];
NSDateFormatter *df = [[NSDateFormatter alloc] init];
[df setDateFormat:@"hh:mm a"];
[df setTimeZone:[NSTimeZone systemTimeZone]];
[df setLocale:[NSLocale systemLocale]];
NSLog(@" >> %@ >>> %@",date,[df dateFromString:@"12:18 AM"])
和日志是
>> 2014-04-10 07:00:48 +0000 >>> 2000-01-01 06:52:00 +0000
我希望第二個日期也與第一個日期相同。
喜歡
2014-04-10 07:00:48 +0000 >>> 2014-04-10 06:52:00 +0000
如果要將時間字符串“ 12:18 AM”轉換為當前日期,則可以按以下步驟進行:
NSString *time = @"12:18 AM";
NSDateFormatter *fmt = [[NSDateFormatter alloc] init];
[fmt setLocale:[NSLocale localeWithLocaleIdentifier:@"en_US_POSIX"]];
// Get year-month-day for today:
[fmt setDateFormat:@"yyyy-MM-dd "];
NSString *todayString = [fmt stringFromDate:[NSDate date]];
// Append the given time:
NSString *todaysTime = [todayString stringByAppendingString:time];
// Convert date+time string back to NSDate:
[fmt setDateFormat:@"yyyy-MM-dd h:mm a"];
NSDate *date = [fmt dateFromString:todaysTime];
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setDateFormat:@"dd/MM/yyyy hh:mm:ss a"];
通過使用此格式化程序,您可以獲得NSDate
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.