小编7ow*_*wen的帖子

从weekOfYear获取不正确的开始和结束日期

let calendar = Calendar.current
    var dateComponents = DateComponents()
    dateComponents.weekday = calendar.firstWeekday
    dateComponents.weekOfYear = 2
    dateComponents.year = 2017
    let startOfWeek = calendar.date(from: dateComponents)
    let endOfWeek = calendar.date(byAdding: .day, value: 6, to: startOfWeek!)
    let formatter = DateFormatter()
    formatter.dateStyle = .short
    print(formatter.string(from: startOfWeek!))
    print(formatter.string(from: endOfWeek!))
Run Code Online (Sandbox Code Playgroud)

打印:

1/8/17
    1/14/17
Run Code Online (Sandbox Code Playgroud)

改变代码:

dateComponents.weekOfYear = 1
    dateComponents.year = 2017
Run Code Online (Sandbox Code Playgroud)

打印:

12/31/17
    1/6/18
Run Code Online (Sandbox Code Playgroud)

为什么是12/31/17?

有谁告诉我?非常感谢.

date ios swift

8
推荐指数
1
解决办法
361
查看次数

标签 统计

date ×1

ios ×1

swift ×1