1

嗨,在我的项目中,我的 Textfield 为 from,另一个是 From 字段中 ex 的延迟,我的值为“18:30”(字符串),延迟字段为“18”(整数),现在我需要添加这两个值和应该在另一个文本字段中显示像“18:48”(字符串)这样的值。如果有人知道指导我,谢谢

4

4 回答 4

7

请参考以下代码进行查询。

NSString *str=@"18:30";
int addTime=18;
NSDateFormatter *formatter=[[NSDateFormatter alloc] init];
[formatter setDateFormat:@"HH:mm"];
NSDate *dateInput=[formatter dateFromString:str];
dateInput=[dateInput dateByAddingTimeInterval:addTime*60];
NSString *dateOutPut=[formatter stringFromDate:dateInput];
NSLog(@"OutputDate= %@",dateOutPut);

控制台输出:18:48

于 2012-10-01T14:08:18.443 回答
2
NSString *str=@"18:30";
int addTime=18;
NSDateFormatter *formatter=[[NSDateFormatter alloc] init];
[formatter setDateFormat:@"HH:mm"];
NSDate *dateInput=[formatter dateFromString:str];
dateInput=[dateInput dateByAddingTimeInterval:addTime*60];
NSString *dateOutPut=[formatter stringFromDate:dateInput];
NSLog(@"OutputDate= %@",dateOutPut);
于 2014-03-20T13:05:51.993 回答
1
//convert string object into NSDate object
NSDateFormatter *formatter = [[NSDateFormatter alloc] init];
[formatter setDateFormat:@"hh:mm a"];

//Set System Timezone
[formatter setTimeZone:[NSTimeZone systemTimeZone]];
NSDate *TimeInDateFormat = [formatter dateFromString:@"12:45 AM"];

//Additing 01:00 Houes
NSTimeInterval secondsInOneHours = 1 * 60 * 60;
NSDate *dateOneHoursAhead = [TimeInDateFormat 
dateByAddingTimeInterval:secondsInOneHours];
NSLog(@"after added dateOneHoursAhead: %@",dateOneHoursAhead);

abow 代码输出为:

after added dateOneHoursAhead: 01:45 PM

现在试试........

于 2016-01-16T09:36:48.967 回答
1

这是快速版本。

 let str: String = "10:30"
        let addTime: Int = 30  //minutes
        let formatter = DateFormatter()
        formatter.dateFormat = "HH:mm"
        var dateInput: Date? = formatter.date(from: str)
        dateInput = dateInput?.addingTimeInterval(TimeInterval(addTime*60))
       endtime = formatter.string(from: dateInput!)

感谢@Andy Paul 提供客观的 c 版本代码。

于 2017-03-02T17:19:08.890 回答