Xcode 在Swift中处理日期

Xcode 在Swift中处理日期,xcode,macos,swift,Xcode,Macos,Swift,我想用斯威夫特操纵一个约会。我试图将实际日期的小时、分钟和秒设置为零 func getDate() -> (NSDate){ let date: NSDate = NSDate() var components = NSDateComponents() components.setValue(0, forComponent: NSCalendarUnit.CalendarUnitHour); components.setValue(0, forCompon

我想用斯威夫特操纵一个约会。我试图将实际日期的小时、分钟和秒设置为零

func getDate() -> (NSDate){
    let date: NSDate = NSDate()

    var components = NSDateComponents()
    components.setValue(0, forComponent: NSCalendarUnit.CalendarUnitHour);
    components.setValue(0, forComponent: NSCalendarUnit.CalendarUnitMinute);
    components.setValue(0, forComponent: NSCalendarUnit.CalendarUnitSecond);

    let expirationDate = NSCalendar.currentCalendar().dateByAddingComponents(components, toDate: date, options: NSCalendarOptions(rawValue: 0))
    return expirationDate!
}
这是我的代码,所以战争,但它不工作。有什么提示吗? 输入为“2015-07-30 18:31:08+0000”,输出为“2015-07-30 00:00:00+0000”

以下是您需要的内容(特别是
组件:fromDate:
调用):

此调用将在iOS 2.0之后的任何iOS系统上运行,因此兼容性应该不会有问题。

以下是您需要的内容(特别是
组件:fromDate:
调用):

此调用将在iOS 2.0之后的任何iOS系统上运行,因此兼容性应该不会有问题。

以下是您需要的内容(特别是
组件:fromDate:
调用):

此调用将在iOS 2.0之后的任何iOS系统上运行,因此兼容性应该不会有问题。

以下是您需要的内容(特别是
组件:fromDate:
调用):


此调用将在iOS 2.0之后的任何iOS系统上运行,因此兼容性不应该是一个问题。

有一种
NSCalendar
方法,它完全可以完成您要完成的任务(10.9及更高版本)

为了明天的开始,你可以用这个

let today = getDate()

let addOneDay = NSDateComponents()
addOneDay.day = 1
let tomorrow = NSCalendar.currentCalendar().dateByAddingComponents(addOneDay, toDate:today, options:NSCalendarOptions())!

有一种
NSCalendar
方法,它能准确地完成您要完成的任务(10.9及更高版本)

为了明天的开始,你可以用这个

let today = getDate()

let addOneDay = NSDateComponents()
addOneDay.day = 1
let tomorrow = NSCalendar.currentCalendar().dateByAddingComponents(addOneDay, toDate:today, options:NSCalendarOptions())!

有一种
NSCalendar
方法,它能准确地完成您要完成的任务(10.9及更高版本)

为了明天的开始,你可以用这个

let today = getDate()

let addOneDay = NSDateComponents()
addOneDay.day = 1
let tomorrow = NSCalendar.currentCalendar().dateByAddingComponents(addOneDay, toDate:today, options:NSCalendarOptions())!

有一种
NSCalendar
方法,它能准确地完成您要完成的任务(10.9及更高版本)

为了明天的开始,你可以用这个

let today = getDate()

let addOneDay = NSDateComponents()
addOneDay.day = 1
let tomorrow = NSCalendar.currentCalendar().dateByAddingComponents(addOneDay, toDate:today, options:NSCalendarOptions())!


到目前为止还有效。但是我怎样才能开始第二天呢?我还认为这是utc。我的结果是2015-07-29 22:00:00+0000
NSCalendar
具有
时区属性。将其设置为适当的值以调整所需的时区。默认值是到目前为止的当前时区工作。但是我怎样才能开始第二天呢?我还认为这是utc。我的结果是2015-07-29 22:00:00+0000
NSCalendar
具有
时区属性。将其设置为适当的值以调整所需的时区。默认值是到目前为止的当前时区工作。但是我怎样才能开始第二天呢?我还认为这是utc。我的结果是2015-07-29 22:00:00+0000
NSCalendar
具有
时区属性。将其设置为适当的值以调整所需的时区。默认值是到目前为止的当前时区工作。但是我怎样才能开始第二天呢?我还认为这是utc。我的结果是2015-07-29 22:00:00+0000
NSCalendar
具有
时区属性。将其设置为适当的值以调整所需的时区。默认值为当前时区,但由于utc的原因,结果也可能为2015-07-29 22:00:00+0000。我希望他忽略utc。您只需将组件的
时区
属性设置为您将在中使用日期的任何
时区。这可以自动完成吗?我在澳大利亚使用我的应用程序的人。我一直希望结果是一样的。这是可行的,但结果也是2015-07-29 22:00:00+0000,可能是因为utc。我希望他忽略utc。您只需将组件的
时区
属性设置为您将在中使用日期的任何
时区。这可以自动完成吗?我在澳大利亚使用我的应用程序的人。我一直希望结果是一样的。这是可行的,但结果也是2015-07-29 22:00:00+0000,可能是因为utc。我希望他忽略utc。您只需将组件的
时区
属性设置为您将在中使用日期的任何
时区。这可以自动完成吗?我在澳大利亚使用我的应用程序的人。我一直希望结果是一样的。这是可行的,但结果也是2015-07-29 22:00:00+0000,可能是因为utc。我希望他忽略utc。您只需将组件的
时区
属性设置为您将在中使用日期的任何
时区。这可以自动完成吗?我在澳大利亚使用我的应用程序的人。我一直希望结果是一样的。