0

在我的应用程序中,我从服务器获取了一些日期。一些日期采用这种格式:"MMM dd, yyyy hh:mm:ss a"而另一些采用这种格式:"yyyy-MM-dd HH:mm:ss Z"。我以上述格式之一从服务器获取日期作为字符串。但是我希望我所有的日期都采用第一种格式。那么我如何比较日期是否为第二种格式以便我可以更改它?我知道如何更改格式,只是不知道如何将日期与特定格式进行比较。谢谢!

4

2 回答 2

1

如果这些是唯一的格式,只需检查一些简单的东西,比如第五个字符是破折号,那么它是第二个,否则是第一个。

于 2012-07-19T10:53:53.310 回答
1

如果您知道任何给定返回字符串的格式,那么您可以明确地为获取日期的每次迭代设置格式,然后将其转换为您需要的任何格式。像这个例子;

NSString *myString1 = @"01-30-2012"; 
NSString *myString2 = @"30-01-2012"; 

// Now convert the string to a date object 
NSDateFormatter *myDateFormat = [[NSDateFormatter alloc] init]; 

[myDateFormat setDateFormat:@"dd-MM-yyyy"]; 
NSDate *date1 = [myDateFormat dateFromString:myString1]; 

[myDateFormat setDateFormat:@"MM-dd-yyyy"]; 
NSDate *date2 = [myDateFormat dateFromString:myString2]; 
[myDateFormat release]; 
于 2012-07-19T11:00:36.993 回答