我如何转换,NSDate到NSString,以便只有年在@“yyyy”格式输出到字符串?
当前回答
希望通过提供包括年、月、日和时间的正常格式化程序来增加更多的价值。 您可以使用这个格式化程序超过一年
[dateFormat setDateFormat: @"yyyy-MM-dd HH:mm:ss zzz"];
其他回答
NSDateFormatter *dateformate=[[NSDateFormatter alloc]init];
[dateformate setDateFormat:@"yyyy"]; // Date formater
NSString *date = [dateformate stringFromDate:[NSDate date]]; // Convert date to string
NSLog(@"date :%@",date);
简单的方法,使用c#风格的方式将日期转换为字符串。
用法:
let a = time.asString()
// 1990-03-25
let b = time.asString("MM ∕ dd ∕ yyyy, hh꞉mm a")
// 03 / 25 / 1990, 10:33 PM
扩展:
extension Date {
func asString(_ template: String? = nil) -> String {
if let template = template {
let df = DateFormatter.with(template: template)
return df.string(from: self)
}
else {
return globalDateFormatter.string(from: self)
}
}
}
// Here you can set default template for DateFormatter
public let globalDateFormatter: DateFormatter = DateFormatter.with(template: "y-M-d")
public extension DateFormatter {
static func with(template: String ) -> DateFormatter {
let df = DateFormatter()
df.dateFormat = template
return df
}
}
希望通过提供包括年、月、日和时间的正常格式化程序来增加更多的价值。 您可以使用这个格式化程序超过一年
[dateFormat setDateFormat: @"yyyy-MM-dd HH:mm:ss zzz"];
使用扩展有清晰的代码
您可以编写一个扩展来将任何Date对象转换为任何所需的日历和格式
extension Date{
func asString(format: String = "yy/MM/dd HH:mm",
for identifier: Calendar.Identifier = .persian) -> String {
let formatter = DateFormatter()
formatter.calendar = Calendar(identifier: identifier)
formatter.dateFormat = format
return formatter.string(from: self)
}
}
然后这样使用它:
let now = Date()
print(now.asString()) // prints -> 00/04/18 20:25
print(now.asString(format: "yyyy/MM/dd")) // prints -> 1400/04/18
print(now.asString(format: "MM/dd", for: .gregorian)) // prints -> 07/09
要了解如何指定您想要的格式字符串,请查看此链接。 关于如何格式化日期的完整参考,请参阅Apple官方日期格式化指南。
如果你没有NSDate -descriptionWithCalendarFormat:timeZone:locale: available(我不相信iPhone/Cocoa Touch包括这个),你可能需要使用strftime和一些c风格的字符串。您可以使用NSDate -timeIntervalSince1970从NSDate中获取UNIX时间戳。
推荐文章
- 如何删除默认的导航栏空间在SwiftUI导航视图
- 如何在iOS中使用Swift编程segue
- Swift -整数转换为小时/分钟/秒
- 如何舍入一个双到最近的Int在迅速?
- 扁平化数组的数组在Swift
- Swift:声明一个空字典
- 为什么ARC仍然需要@autoreleasepool ?
- 从数组中随机选择一个元素
- 首先添加一个UIView,甚至是导航栏
- 我如何改变UIButton标题颜色?
- 在Swift中如何调用GCD主线程上的参数方法?
- iOS -构建失败,CocoaPods无法找到头文件
- Xcode 4挂在“附加到(应用程序名称)”
- swift语言中的结构与类
- 我如何在Swift连接字符串?