我有三個字符串如何在iphone中添加時間?
str1 = @「00:14」; str2 = @「00:55」; str3 = @「00:10」;
我需要將三個字符串添加爲一個整數,顯示在同一時間格式
我該怎麼辦,請幫我
由於提前
我有三個字符串如何在iphone中添加時間?
str1 = @「00:14」; str2 = @「00:55」; str3 = @「00:10」;
我需要將三個字符串添加爲一個整數,顯示在同一時間格式
我該怎麼辦,請幫我
由於提前
與可可日期的工作是樂趣!你可以創建這樣的方法:
- (NSDate *)dateByAddingDates:(NSArray *)dates {
NSCalendar *calendar = [NSCalendar currentCalendar];
unsigned unitFlags = NSHourCalendarUnit | NSMinuteCalendarUnit | NSSecondCalendarUnit;
NSDate *date = [dates objectAtIndex:0];
for (int i = 1; i < [dates count]; i++) {
NSDate *newDate = [dates objectAtIndex:i];
NSDateComponents *comps = [calendar components:unitFlags fromDate:newDate];
date = [calendar dateByAddingComponents:comps toDate:date options:0];
}
return date;
}
而且使用這樣的:
NSString *str1 = @"00:14";
NSString *str2 = @"00:55";
NSString *str3 = @"00:10";
NSDateFormatter *dateFormatter = [[[NSDateFormatter alloc] init] autorelease];
[dateFormatter setDateFormat:@"mm:ss"];
NSArray *dates = [NSArray arrayWithObjects:[dateFormatter dateFromString:str1],
[dateFormatter dateFromString:str2],
[dateFormatter dateFromString:str3], nil];
NSDate *date = [self dateByAddingDates:dates];
NSLog(@"%@", [dateFormatter stringFromDate:date]);
要正確地做事情,它會是這樣的:
NSDateFormatter
將字符串轉換爲NSDate
objec TS。[NSCalendar currentCalendar]
來提取每個日期的NSDateComponents
,特別是NSMinuteCalendarUnit
。NSDateComponent
對象NSDateComponent
轉換回一個NSDate
。做事情愚蠢,:
後,你會得到字符的字符串,調用它intValue
打開字符串轉換爲int
,然後說起來。我不建議這樣做,因爲它可能導致微妙和迂迴的錯誤。另外,已經有代碼可以爲你做。 :)
退房此相關的主題:Comparing dates
在總結,第一解析字符串作爲使用initWithString NSDates:方法調用。之後,您可以按照自己的意願添加和操作日期,最後只需將其格式化爲正確的輸出。
希望這個希望能夠澄清你的疑問。
者均基於Mac開發者SDK參考可以在這裏找到你的信息: - http://developer.apple.com/library/mac/#documentation/Cocoa/Reference/Foundation/Classes/NSDate_Class/Reference/Reference.html#//apple_ref/occ/cl/NSDate