Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/string/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在Swift 3中将两个字符串(日期和时间)组合成新的日期_Swift_String_Date - Fatal编程技术网

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

如何在Swift 3中将两个字符串(日期和时间)组合成新的日期,swift,string,date,Swift,String,Date,我正在尝试将两个日期字符串组合成一种格式,以允许新的单一日期。第一个字符串是.long样式的格式字符串。第二个字符串只是一个时间字符串。这些值如下所示: let date = "March 24, 2017" let time = "7:00 AM" 我需要组合这些字符串以形成一个新的日期,该日期用作iOS swift date。我尝试了各种日期格式化程序,并将字符串合并在一起,但是.Long for date和.short for time的组合似乎不起作用。感谢您的快速回复,我错过了“at

我正在尝试将两个日期字符串组合成一种格式,以允许新的单一日期。第一个字符串是.long样式的格式字符串。第二个字符串只是一个时间字符串。这些值如下所示:

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

我需要组合这些字符串以形成一个新的日期,该日期用作iOS swift date。我尝试了各种日期格式化程序,并将字符串合并在一起,但是.Long for date和.short for time的组合似乎不起作用。

感谢您的快速回复,我错过了“at”部分。注意。无需将“处的
”放在两个字符串之间和格式化程序中。只需要一个空格,但没有什么可读的。目标是创建一个
日期
,而不是
字符串
。您当然不需要更可读的字符串来将其解析为
日期
@rmaddy从这个角度看,甚至连空格都不需要needed@LeoDabus可能不会。
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"