小编abc*_*efg的帖子

在Swift中将日期从GMT + 1转换为UTC时出现混乱

当您尝试将"2016-06-23 12:00:00"转换为UTC日期时,我会收到"2016-06-23 10:00:00"

第一个日期是GMT + 1,我想转换为UTC.如果我没弄错GMT + 0 == UTC所以12:00应该是11:00对吗?但我总是得到10点.为什么会这样,我该如何正确转换它?

我在操场上和实际设备上都试过这个

这是我使用的代码:

class ViewController: UIViewController {

override func viewDidLoad() {
    super.viewDidLoad()
    // Do any additional setup after loading the view, typically from a nib.

    let datestring:String = "2016-06-23 12:00:00"

    print("1: "+datestring)

    print("2: "+convertDateToUTC(datestring))

}

override func didReceiveMemoryWarning() {
    super.didReceiveMemoryWarning()
    // Dispose of any resources that can be recreated.
}

func convertDateToUTC(_ datestring:String) -> String {

    let dateForm = DateFormatter()
    dateForm.dateFormat = "yyyy-MM-dd HH:mm:ss"
    dateForm.timeZone = TimeZone(abbreviation: "GMT+1")

    print(TimeZone.current.abbreviation()!)

    let date …
Run Code Online (Sandbox Code Playgroud)

date utc gmt ios swift

3
推荐指数
1
解决办法
4050
查看次数

标签 统计

date ×1

gmt ×1

ios ×1

swift ×1

utc ×1