9

の日付の秒値" 00" を常に取得するにはどうすればよいですか?UIDatePicker

今、私はこの形式のような価値を得ています5:30:45、私はこの形式の時間を取得する必要があります5:30:00

これを達成する方法は?

4

6 に答える 6

14

私はこのコードを使用しましたが、正常に機能しています。

NSCalendar *calendar = [NSCalendar currentCalendar];
    NSDateComponents *dateComponents = [calendar components:( NSYearCalendarUnit | NSMonthCalendarUnit |  NSDayCalendarUnit ) fromDate:datePicker.date];
    NSDateComponents *timeComponents = [calendar components:( NSHourCalendarUnit | NSMinuteCalendarUnit | NSSecondCalendarUnit ) fromDate:datePicker.date];

    [dateComponents setHour:[timeComponents hour]];
    [dateComponents setMinute:[timeComponents minute]];
    [dateComponents setSecond:0.0];

    NSDate *newDate = [calendar dateFromComponents:dateComponents];  
于 2012-08-18T13:50:11.253 に答える
7

NSDateComponentsと調整したり、日付を文字列に変換したりする必要はありません。カレンダーに日付を分の先頭に設定するように指示するだけです(時間/日付/週/…)

NSDate *date = self.datePicker.date;
[[NSCalendar currentCalendar] rangeOfUnit:NSCalendarUnitMinute
                                startDate:&date
                                 interval:NULL
                                  forDate:date];
//date now is set to the beginning of the minute -> seconds == 00
于 2013-05-15T16:28:50.607 に答える
4
NSDate *currentDate = [datePicker date];    
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setDateFormat:@"ss"];
[dateFormatter setTimeZone:[NSTimeZone timeZoneForSecondsFromGMT:0.0]];
NSString *Str_Seccond=[dateFormatter stringFromDate:currentDate];

Str_Seccond文字列では、秒を文字列形式で取得できます。

于 2012-08-18T12:50:16.020 に答える
2

Swift 4バージョン:

 let calendar = NSCalendar.current
 let components = calendar.dateComponents([.year, .month, .day,
                                           .hour, .minute], 
                                           from: yourDate)
 let date = calendar.date(from: components)
于 2018-10-09T10:00:15.133 に答える
1
NSDateFormatter *dateformatter = [[NSDateFormatter alloc] init];
[dateformatter setDateFormat:@"ss"];
NSLog(@"%@",[dateformatter stringFromDate:[datePicker date]]);
于 2012-08-18T12:50:37.203 に答える
1

Swiftの場合:

let calendar = NSCalendar.currentCalendar()
let components = calendar.components([.Year, .Month, .Day, .Hour, .Minute], fromDate: datePicker.date)
let date = calendar.dateFromComponents(components)
于 2016-08-17T08:33:53.857 に答える