我该如何将像"01/02/10"(意思是2010年2月1日)这样的NSString转换成NSDate?我怎样才能把NSDate变回一根弦呢?

推荐答案

SWIFT 4和更高版本

更新日期:2018年

String to Date

var dateString = "02-03-2017"
var dateFormatter = DateFormatter()

// This is important - we set our input date format to match our input string
// if the format doesn't match you'll get nil from your string, so be careful
dateFormatter.dateFormat = "dd-MM-yyyy"

//`date(from:)` returns an optional so make sure you unwrap when using. 
var dateFromString: Date? = dateFormatter.date(from: dateString)

Date to String

var formatter = DateFormatter()
formatter.dateFormat = "dd-MM-yyyy"
guard let unwrappedDate = dateFromString else { return }

//Using the dateFromString variable from before. 
let stringDate: String = formatter.string(from: dateFromString)

Swift 3

更新日期:2017年7月20日

String to NSDate个个

var dateString = "02-03-2017"
var dateFormatter = DateFormatter()
// This is important - we set our input date format to match our input string
// if the format doesn't match you'll get nil from your string, so be careful
dateFormatter.dateFormat = "dd-MM-yyyy"
var dateFromString = dateFormatter.date(from: dateString)

NSDate to String

var formatter = DateFormatter()
formatter.dateFormat = "dd-MM-yyyy"
let stringDate: String = formatter.string(from: dateFromString)

Swift

更新日期:2015年10月22日

String to NSDate个个

var dateString = "01-02-2010"
var dateFormatter = NSDateFormatter()
// this is imporant - we set our input date format to match our input string
dateFormatter.dateFormat = "dd-MM-yyyy"
// voila!
var dateFromString = dateFormatter.dateFromString(dateString)

NSDate to String

var formatter = NSDateFormatter()
formatter.dateFormat = "dd-MM-yyyy"
let stringDate: String = formatter.stringFromDate(NSDate())
println(stringDate)

目标C

NSString to NSDate

NSString *dateString = @"01-02-2010";
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setDateFormat:@"dd-MM-yyyy"];
NSDate *dateFromString = [dateFormatter dateFromString:dateString];

NSDate convert to NSString:

NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setDateFormat:@"dd-MM-yyyy"];
NSString *stringDate = [dateFormatter stringFromDate:[NSDate date]];
NSLog(@"%@", stringDate);

Ios相关问答推荐

SwiftUI ScrollView中的默认空间

使用NavigationStack和.searchable时如何显示大型导航标题?

如何在SWIFT中处理不可发送的类型?

Xcode15.3上的生成错误:调用的对象类型';facebook::flipper::SocketCertificateProvider';不是函数或函数指针

DriverKit驱动程序中可能存在IOBufferMemoyDescriptor泄漏

UIAlertController的空子类是否可以与`appearance(whenContainedInInstancesOf:)`一起安全使用

ScrollViewReader Scrollto Not Working

磁盘上的Objective-C ISA指针与实例化对象时的比较

如何在KMM项目中处理PHPickerViewController的回调?

如何删除NavigationView中的默认透明标头?

Strange UIView.animate更改UIButton标题 colored颜色 的行为

如何更改 SwiftUI 弹出视图的大小?

在 Swift 中使用 UITesting 捕获屏幕录像

向左或向右移动时如何水平翻转sprite?

使用swift将图像转换为A4大小的pdf

如何避免任何绑定空错误并更好地获取代码

在 UITextView 中垂直居中文本

刷新由 Xcode 7 管理的团队配置文件中的设备?

如何在react 导航中获取当前路由名称?

打开 XIB 文件后 Xcode 6.3 冻结/挂起