gpt4 book ai didi

swift - 格式化日期 2 行

转载 作者:搜寻专家 更新时间:2023-11-01 06:22:50 26 4
gpt4 key购买 nike

我希望日期在 2 行上

public func smdt(date:NSDate)->NSString{
var dateFormatter = NSDateFormatter()
dateFormatter.dateFormat = "h:mma dd MMMM yyyy"
return dateFormatter.stringFromDate(date)
}

我在字符串中添加时间,但我想在“dd”之前开始新的一行

示例:h:mma\ndd MMMM yyyy

应该是:

7:12PM

19 May 2015

.dateFormat 中,\n 不起作用...唯一的方法是检测 PM 和 19 之间的第一个空格并替换它与 \n。如何做到?

它必须适用于地球上的每个时区。这意味着我不能使用 AM/PM 来分隔...

最佳答案

您的代码应该可以工作。也许这让您感到困惑,例如,如果您从 playground 中检查返回值的值,该值是这样的:

"6:21PM\n19 May 2015"

但是如果我这样使用你的代码:

public func smdt(date:NSDate)->NSString{
var dateFormatter = NSDateFormatter()
dateFormatter.dateFormat = "h:mma\ndd MMMM yyyy"
return dateFormatter.stringFromDate(date)
}

然后使用println调用该值:

println(smdt2(NSDate()))

打印出来的值是这样的:

6:22PM
19 May 2015

因此您可以像已经尝试过的那样使用您的代码。

但您也可以像这样拆分小时和日期/月份,然后再将其连接起来:

public func smdt(date:NSDate)->NSString{
var dateFormatter = NSDateFormatter()
dateFormatter.dateFormat = "h:mma"
var hour = dateFormatter.stringFromDate(date)
dateFormatter.dateFormat = "dd MMMM yyyy"

var otherPart = dateFormatter.stringFromDate(date)
return "\(hour)\n\(otherPart)"
}

关于swift - 格式化日期 2 行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30330870/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com