鉴于三个整数,代表了日,月,年,什么样的代码将组装这些整数转换成日期对象?
Answer 1:
你应该看看NSDateComponents
:
int y = 2011;
int m = 1;
int d = 15;
NSDateComponents *dc = [[NSDateComponents alloc] init];
[dc setYear:y];
[dc setMonth:m];
[dc setDay:d];
NSLog(@"%@: %@", [[dc date] class], [dc date]);
Answer 2:
NSDateFormatter使用Unicode标准解析日期字符串成日期。 因此,格式化整数为日期字符串,然后使用和NSDateFormatter来分析吧:
// assume year, month and day are integers that are formatted properly and don't
// include invalid ranges
NSString* dateString = [NSString stringWithFormat:@"%04d %02d %02d", year, month, day];
NSDateFormatter* formatter = [[NSDateFormatter alloc] init];
// Choose a format of YEAR MONTH DATE per the standard
[formatter setDateFormat:@"yyyy MM dd"];
NSDate* date = [formatter dateFromString:dateString];
[formatter release];
您可以设置格式字符串的任何格式你的船浮筒,只要您使用Unicode标准(上面链接),您将您的整数为相同格式(明显)。
文章来源: Assemble date object from integers?