如何使用特定日期格式发送NSDate作为NSNumber?即用另一种格式将NSDate转换为NSDate?

问题描述 投票:2回答:3

我有两个用户选择的日期:startDate和endDate。它们是NSDate实例,我必须将它们作为NSNumbers的参数发送。如何用秒将它们转换为NSNumber?

objective-c nsdate nsnumber
3个回答
2
投票

1)首先,以MM/dd/yyyy格式获取日期:

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

2)获取字符串日期并从中删除'/':

NString *string = [formatter stringFromDate:date];
NString *finalStr = [string stringByReplacingOccurrencesOfString:@"/" withString:@""];

3)使用NSNumberFormatterNSString转换为NSNumber

NSNumberFormatter *f = [[NSNumberFormatter alloc] init];
f.numberStyle = NSNumberFormatterDecimalStyle;
NSNumber *myNumber = [f numberFromString: finalStr];

希望,这就是你想要的!


3
投票

使用以下代码:

 NSDateFormatter *formatter = [[NSDateFormatter alloc]init];
// set format however you want
[formatter setDateFormat:@"ddMMyyyy"];
NSDate *date = [NSDate date];
NSString *string = [formatter stringFromDate:date];
NSNumber *num1 = @([string intValue]);
NSLog(@"%@",num1);

0
投票

如果您的意思是时间戳格式NSDate * date = [NSDate date]; NSTimeInterval ti = [date timeIntervalSince1970]; How to convert NSDate into Unix timestamp in Objective C/iPhone?

谢谢,

© www.soinside.com 2019 - 2024. All rights reserved.