4

この形式で日付を返す Web サービスがあります。

2013-04-14

これが何日に対応するかを知るにはどうすればよいですか?

4

5 に答える 5

11

このコードは文字列を取り、それを NSDate オブジェクトに変換し、曜日の数 (14) と曜日の名前 (日曜日) の両方を抽出します。

NSString *myDateString = @"2013-04-14";

// Convert the string to NSDate
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
dateFormatter.dateFormat = @"yyyy-MM-dd";
NSDate *date = [dateFormatter dateFromString:myDateString];

// Extract the day number (14)
NSDateComponents *components = [[NSCalendar currentCalendar] components:NSDayCalendarUnit fromDate:date];
NSInteger day = [components day];

// Extract the day name (Sunday)
dateFormatter.dateFormat = @"EEEE";
NSString *dayName = [dateFormatter stringFromDate:date];

// Print
NSLog(@"Day: %d: Name: %@", day, dayName);

注: このコードは ARC 用です。MRC の場合、最後に [dateFormatter release] を追加します。

于 2013-04-12T02:37:30.567 に答える
6

曜日を取得する別の方法は次のとおりです。

NSString *myDateString = @"2013-04-14";
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setDateFormat:@"yyyy-MM-dd"];

NSDate *date = [dateFormatter dateFromString:myDateString];
NSDateComponents *components = [[NSCalendar currentCalendar] components:NSWeekdayCalendarUnit fromDate:date];

NSInteger weekday = [components weekday];
NSString *weekdayName = [dateFormatter weekdaySymbols][weekday - 1];

NSLog(@"%@ is a %@", myDateString, weekdayName);
于 2013-04-12T02:47:35.173 に答える
0

スウィフト 3:


let datFromat = DateFormatter()

datFormat.dateFormat = "EEEE"

let name = datFormat.string(from: Date())

ボーナス: 上記の代わりに独自の日付テンプレートを設定する場合Date():

let datFormat = DateFormatter()

datFormat.dateFormat = "yyyy-MM-dd'T'HH:mm:ssZZZZZ"

let thisDate = datFormat.date(from: "2016-10-13T18:00:00-0400")

次に、この後に最初のコードを呼び出します。

于 2016-10-05T01:18:48.083 に答える