dateformat将日期类型转换为指定的字符串格式的方法名是啥

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了dateformat将日期类型转换为指定的字符串格式的方法名是啥相关的知识,希望对你有一定的参考价值。

参考技术A 用SimpleDateFormat类,format(字符串)转为date,parse(Date对象)转为字符串

将字符串转换为 NSDate 给出错误的日期

【中文标题】将字符串转换为 NSDate 给出错误的日期【英文标题】:Converting String to NSDate Giving Wrong Date 【发布时间】:2016-04-27 15:50:10 【问题描述】:

我有一个使用 stringFromDate 转换的字符串,现在我正在尝试将其转换回来,但是当 UIPicker 启动时,它给了我错误的一天

 let dateFormatter = NSDateFormatter()
 dateFormatter.dateFormat = "dd MMM YYYY"

 print(birthday) // logs 15 Jan 1992

 let date = dateFormatter.dateFromString(birthday)
 self.datePicker.setDate(date!, animated: true)

我尝试硬编码"15 Feb 1992",但结果仍然相同。 UIDatePicker 上的日期在开始时显示为 1991 年 12 月 22 日。

如果我使用硬核10 Jan 1980,它是从 1979 年 12 月 23 日开始的。

(我不知道是不是这样,但我在 UIPickerView 中有MMM dd YYYY,而字符串是dd MMM YYYY。我不这么认为,因为在保存时,它保存了正确的值)..

【问题讨论】:

【参考方案1】:

使用正确的格式字符串最重要..

YYYY 是基于周的日历年。 (用于 ISO 周年历)

yyyy 是普通日历年。

所以,你应该使用 'yyyy' 而不是 'YYYY'。

let dateFormatter = NSDateFormatter()
dateFormatter.dateFormat = "dd MMM yyyy"

print(birthday)  

let date = dateFormatter.dateFromString(birthday)
self.datePicker.setDate(date!, animated: true)

有关日期的更多字符串格式:请参阅此链接

https://msdn.microsoft.com/en-us/library/az4se3k1(v=vs.110).aspx

【讨论】:

谢谢,我一直收到一些奇怪的约会。 IE。我有 10062017 和 24-12-2016 都是因为我有 YYYY 而不是 yyyy。【参考方案2】:

您使用了错误的格式。你需要dd MMM yyyy

【讨论】:

我应该在保存的同时使用它吗?因为我使用的是dd MMM YYYY,它正在保存..只是为了学习.. 在这一年中始终使用yyyy,除非您有明确且可理解的原因需要使用YYYY。它们不是一回事。

以上是关于dateformat将日期类型转换为指定的字符串格式的方法名是啥的主要内容,如果未能解决你的问题,请参考以下文章

java怎么将String转换成日期

java的date怎么转换成utc

如何用Java把date类型转换成long数字?

使用注解格化日期

如何将JAVA DATE类型的日期 转换成指定格式类型的 (如:YYYY-MM-DD) 的 DATE类型数据?

java 使用Date类和DateFormat抽象类和Calendar抽象类实现日历