在iOS中以不同格式解析日期

时间:2012-01-03 19:42:19

标签: ios xml-parsing nsdateformatter

在我的应用中,我从Webservices获取数据。数据以XML的形式出现,我使用解析器来解析并获取我需要的数据。

在其中一个结果中,我的日期是2011年12月14日。但是我想将日期显示为2011-14-12。

这是我使用的代码..

NSDate *endDate = [CommonHelper getDateFromString:[NSString stringWithString:elementValue] :@"dd-MMM-yyyy HH:mm:ss"];

+ (NSDate *) getDateFromString: (NSString *) dateStr: (NSString *) format
{
    NSDateFormatter *dateFormat = [[NSDateFormatter alloc] init];
    [dateFormat setDateFormat:format]; 
    NSDate *newDate = [dateFormat dateFromString:dateStr];
    [dateFormat release];

    return newDate;
}

有人能帮助我如何做到这一点吗?

1 个答案:

答案 0 :(得分:1)

使用这些方法解析日期字符串并按照您的描述格式化日期对象:

+ (NSDate *)parseDate:(NSString *)dateString {
    NSDateFormatter *dateFormat = [[NSDateFormatter alloc] init];
    [dateFormat setDateFormat:@"dd MMM yyyy"]; 
    NSDate *newDate = [dateFormat dateFromString:dateString];
    [dateFormat release];

    return newDate;
}

+ (NSString *)formatDate:(NSDate *)date {
    NSDateFormatter *dateFormat = [[NSDateFormatter alloc] init];
    [dateFormat setDateFormat:@"yyyy-dd-MM"]; 
    NSString *dateString = [dateFormat stringFromDate:date];
    [dateFormat release];

    return dateString;
}