簡體   English   中英

將靜態時間轉換為NSDate返回較舊的日期

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM