Tôi hỏi một cơ sở dữ liệu cho ngày của một đối tượng. Tôi lấy lại một chuỗi như vậy: 2011-08-16T19:03:21.000Z
(Đây là một chuỗi khác: 2011-08-12T02:13:16.000Z
);Lấy ngày từ chuỗi '2011-08-16T19: 03: 21.000Z'
Edit: Đây là một số khác mà tôi đã thực hiện 16 tháng tám năm 2011, lúc 12:51 AM for mục đích thử nghiệm: 2011-08-16T19:51:24.000Z
Tôi muốn chuyển đổi ngày này sang định dạng khác cho mục đích hiển thị. Định dạng này có thể thay đổi trong tương lai, vì vậy tôi không muốn thực hiện thao tác chuỗi trực tiếp. Điều tốt nhất cần làm là biến nó thành một NSDate, và sau đó quay lại chuỗi được định dạng đúng. Tuy nhiên, tôi không thể, cho cuộc sống của tôi, nhận được chuỗi darn vào một NSDate.
- (NSString *)makeDateStringReadable:(NSString *)dateString {
NSLog(@"The String: %@", dateString);
NSDateFormatter *formatter = [[NSDateFormatter alloc] init];
[formatter setDateFormat:@"yyyy-MM-ddTHH:mm:ss.zzzz"];
NSDate *theDate = [formatter dateFromString:dateString];
NSLog(@"The Date: %@", theDate);
[formatter setDateFormat:@"yyyy-MM-dd"];
NSString *finalString = [formatter stringFromDate:theDate];
[formatter release];
return finalString;
}
Chuỗi gốc được chuyển vào và đăng xuất nhưng nhật ký "Ngày:" luôn hiển thị không có giá trị. Tôi giả sử định dạng không chính xác ... nhưng tôi không thể làm cho nó đúng. Tôi đã thử sử dụng this làm tài liệu tham khảo.
Tôi có thể nhận được sự trợ giúp của chuyên gia DateFormatter không? Cảm ơn bạn rất nhiều!
Bạn có thể tìm thấy triển khai hoạt động tại đây: http://devbytom.blogspot.fr/2011/04/rfc-3339-dates-and-ios-parsing.html – Martin
Định dạng hoạt động: '[formatter setDateFormat: @ "yyyy -MM-dd'T'HH: mm: ss.SSS'Z '"];' Được sao chép từ bên dưới nhận xét. –