Sugan S
Sugan S

Reputation: 1778

Add time interval to time in IOS?

Hi in my project I have Textfield as from and another is delay for ex in From filed I have value as "18:30"(string) and in delay filed "18" (integer) ,now I need to add these two value and should display value like "18:48"(string) in another textfield.If anyone know guide me thanks

Upvotes: 1

Views: 2735

Answers (4)

Narasimha Nallamsetty
Narasimha Nallamsetty

Reputation: 1263

Here is swift version.

 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!)

Thanks to @Andy Paul for objective c version of code.

Upvotes: 1

PT Vyas
PT Vyas

Reputation: 704

//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 code output is :

after added dateOneHoursAhead: 01:45 PM

try now........

Upvotes: 1

Abdul Yasin
Abdul Yasin

Reputation: 3508

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);

Upvotes: 2

NNikN
NNikN

Reputation: 3850

Please refer to the following code for your query.

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);

Console Output: 18:48

Upvotes: 7

Related Questions