从NSString中删除空白后的字符

时间:2015-03-13 13:38:22

标签: ios objective-c

我有一些像这样的日期字符串:2010年1月1日10:34:11,但我只想要MM / DD / YYYY格式。

我试过在&#34之前获取字符串的片段。 "通过使用这样的东西:

NSRange range = [dates[i] rangeOfString:@" "];

NSString *newString = [dates[i] substringWithRange:NSMakeRange(0,range.location)];

但是,它与spaceOfString的空格无法正常工作。我怎样才能让它正常工作?谢谢!

4 个答案:

答案 0 :(得分:2)

不要这样做。

只需使用NSDateFormatter。 从NSString转换为NSDate - >改变fromat - >转换为字符串。

答案 1 :(得分:1)

NSString *dateString = @"1/1/2010 10:34:11 PM";

NSDateFormatter *formatter = [[NSDateFormatter alloc] init];
[formatter setDateFormat:@"dd/MM/yyyy hh:mm:ss aa"];

NSDate *date = [formatter dateFromString:dateString];

[formatter setDateFormat:@"dd/MM/yyyy"];

NSString *newDateString = [formatter stringFromDate:date];

// Output: 1/1/2010   
NSLog(@"new date string is %@", newDateString);

答案 2 :(得分:1)

尝试使用NSDateFormatter课程来处理日期格式。

答案 3 :(得分:0)

虽然您可以使用NSDateFormatter,但是使用类似于您尝试过的[NSString componentsSeparatedByString:]快速而肮脏的方法:

NSArray *dateParts = [dates[i] componentsSeparatedByString:@" "];
NSLog(@"%@", dateParts[0]);