我想将NSString转换为NSDate。
所以我尝试了以下代码:
NSDateFormatter *formatter = [[NSDateFormatter alloc] init];
[formatter setDateFormat:@"dd-MM-yyyy"];
NSString *checkInDate = lblCheckIn.text;
NSString *checkOutDate = lblCheckOut.text;
我在这里得到以下输出。
NSLog(@"\nCheckIn Date : %@\nCheckOut Date : %@",checkInDate,checkOutDate);
// CheckIn Date : 26-10-2011
// CheckOut Date : 29-10-2011
现在我想将此NSString转换为带有dd-MM-yyyy
格式的NSDate。
NSDate *checkOut = [formatter dateFromString:checkOutDate];
NSDate *checkIn = [formatter dateFromString:checkInDate];
[formatter release];
但我得到了以下输出。
NSLog(@"\nCheck In : %@\nCheck Out : %@",checkIn,checkOut);
// Check In : 2011-10-25 18:30:00 +000
// Check Out : 2011-10-28 18:30:00 +000
可能出现什么问题?
答案 0 :(得分:2)
我希望你在+5:30的时区.. 您的代码没有错。它只在GMT时区打印时间。
答案 1 :(得分:1)
NSDateFormatter *formatter = [[NSDateFormatter alloc] init];
[formatter setDateFormat:@"dd-MM-yyyy"];
NSTimeZone *gmt = [NSTimeZone timeZoneWithAbbreviation:@"GMT"];
[formatter setTimeZone:gmt];
NSString *checkInDate =@"26-10-2011";
NSString *checkOutDate =@"29-10-2011";
NSDate *checkOut = [formatter dateFromString:checkOutDate];
NSDate *checkIn = [formatter dateFromString:checkInDate];
[formatter release];