日期转换为字符串时的时间更改

问题描述 投票:0回答:1

我正在尝试从约会中减去分钟。 BaseDate是我的日期,而dateMinusMin是我的日期减去的分钟,可以正常工作。

let baseDate = "2020-03-06 06:00" //My date With format "yyyy-MM-dd HH:mm"

let dateMinusMin = Calendar.current.date(byAdding: .minute, value: -(240), to: baseDate)!
print(dateMinus4Hours) \\2020-03-06 02:00:00 +0000

但是当我将日期转换为字符串时,时间发生了巨大变化,显示为07:30而非02:00

  let modifyStr = Utill.getLocalStringFromDate("yyyy-MM-dd HH:mm Z", date: dateMinus4Hours, iden: "en_US_POSIX")
    print(modifyStr) \\ 2020-03-06 07:30 +0530

OutPut = 2020-03-06 07:30 +0530

将日期转换为字符串的函数

 func getLocalStringFromDate(_ currentFormat:String,date:Date,iden:String) -> String {
        let formatter = DateFormatter()
        formatter.dateFormat = currentFormat
        formatter.locale = Locale(identifier: iden)
        return formatter.string(from: date)
    }
ios swift xcode nsdateformatter
1个回答
0
投票

我在您的代码中找不到任何问题。您可以在下图中看到结果。

输入信息-06:00小时

输出-02:00小时(您希望减去4小时)

enter image description here

© www.soinside.com 2019 - 2024. All rights reserved.