如何在Swift 3中将两个字符串(日期和时间)组合成一个新日期

iOS*_*Fun 3 string date swift

我正在尝试将两个日期字符串组合成一种格式,以允许新的单个日期.第一个字符串是.long样式格式字符串.第二个字符串只是一个时间字符串.值看起来像这样:

let date = "March 24, 2017"
let time = "7:00 AM"
Run Code Online (Sandbox Code Playgroud)

我需要组合这些字符串以形成一个新的日期,作为iOS快速日期.我已经尝试了各种DateFormatters并将字符串合并在一起但是.Long for date和.short for time的组合似乎不起作用.

Leo*_*bus 7

let date = "March 24, 2017"
let time = "7:00 AM"

let dateFormatter = DateFormatter()
dateFormatter.locale = Locale(identifier: "en_US_POSIX")
dateFormatter.dateFormat = "MMMM dd, yyyy 'at' h:mm a"
let string = date + " at " + time                       // "March 24, 2017 at 7:00 AM"
let finalDate = dateFormatter.date(from: string)
print(finalDate?.description(with: .current) ?? "")  // "Friday, March 24, 2017 at 7:00:00 AM Brasilia Standard Time"
Run Code Online (Sandbox Code Playgroud)

  • 感谢快速周转,我错过了“ at”部分。问候。 (2认同)