0

在我的项目中,我有一个 NSString 包含这样的数据

NSString *s=@"20";

我想将其转换为“08:00”。我怎样才能做到这一点?

我试过这个:

NSDateFormatter *dateFormatter = [[[NSDateFormatter alloc] init] autorelease];
[dateFormatter setDateFormat:@"hh:mm a"];
NSString* dateString = [dateFormatter stringFromDate:@"20"];

但我将此 dateString 作为空值。

4

2 回答 2

3

您输入为NSString,需要输出为NSString

因此,不需要NSDate和的中间工作。NSDateFormatter

您可以通过以下方式实现:

NSString *s=@"20";
NSString *time=[NSString stringWithFormat:@"%d:00",[s integerValue]%12];
于 2013-05-08T05:39:02.747 回答
-1

请尝试使用这个。我希望它能正常工作......

NSString *s=@"20";    
NSDateFormatter *df = [[NSDateFormatter alloc] init];
[df setDateFormat:@"HH"];
NSDate *date = [df dateFromString:s];

[df setDateFormat:@"hh:mm a"];
NSString *newTime = [df stringFromDate:date];
NSLog(@"Time : %@",newTime);
于 2013-05-08T05:34:35.150 回答