for_2012 2013-07-10 06:37 采纳率: 0%
浏览 2846
已采纳

NSString转换到NSDate时日期不对

代码:

NSString * dateStr = @"7/25/2013 12:00:00 AM";    
NSDateFormatter *dateFormat = [[NSDateFormatter alloc] init];
[dateFormat setDateFormat:@"MM/dd/yyyy hh:mm:ss a"];
NSDate *date = [dateFormat dateFromString:dateStr];  
NSLog(@"dateStr : %@ , date : %@",dateStr,date);

但是转换的日期会比实际日期差一天:

dateStr : 7/25/2013 12:00:00 AM , date : 2013-07-24 18:30:00 +0000
  • 写回答

2条回答 默认 最新

  • xinyoulingxi1_tong 2013-07-10 07:11
    关注
    NSString * dateStr = @"7/25/2013 12:00:00 AM";
    
    NSDateFormatter *dateFormat = [[NSDateFormatter alloc] init];
    [dateFormat setDateFormat:@"MM/dd/yyyy hh:mm:ss a"];
     [dateFormat setTimeZone:[NSTimeZone timeZoneForSecondsFromGMT:0]];
    NSDate *date = [dateFormat dateFromString:dateStr];
    
    NSLog(@"dateStr : %@ , date : %@",dateStr,date);
    

    试试看

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?