NSDateFormatter 格式
系统提供的格式化字符串
NSDateFormatterStyle = kCFDateFormatterShortStyle
typedef NS_ENUM(NSUInteger, NSDateFormatterStyle) { // date and time format styles
NSDateFormatterNoStyle =kCFDateFormatterNoStyle, //无输出
NSDateFormatterShortStyle =kCFDateFormatterShortStyle, // 10/29/12, 2:27 PM
NSDateFormatterMediumStyle =kCFDateFormatterMediumStyle, // Oct 29, 2012, 2:36:59 PM
NSDateFormatterLongStyle =kCFDateFormatterLongStyle, //October 29, 2012, 2:38:46 PM GMT+08:00
NSDateFormatterFullStyle =kCFDateFormatterFullStyle //Monday, October 29, 2012, 2:39:56 PM China Standard Time
};
自定义区域语言 NSLocale
若NSLocale 设置的格式是 en_US(美国英语) ,输出的对应格式如上图;
若NSLocale 设置的格式是 zh_CN(简体中文),输出的对应格式如下图
typedef NS_ENUM(NSUInteger, NSDateFormatterStyle) { // date and time format styles
NSDateFormatterNoStyle =kCFDateFormatterNoStyle, //无输出
NSDateFormatterShortStyle =kCFDateFormatterShortStyle, // 12-10-29 下午2:52
NSDateFormatterMediumStyle =kCFDateFormatterMediumStyle, // 2012-10-29 下午2:51:43
NSDateFormatterLongStyle =kCFDateFormatterLongStyle, //2012年10月29日 GMT+0800下午2时51分08秒
NSDateFormatterFullStyle =kCFDateFormatterFullStyle //2012年10月29日星期一 中国标准时间下午2时46分49秒
};
世界通用的区域语言代码,详见 International Components for Unicode (ICU), http://userguide.icu-project.org/formatparse/datetime
自定义日期时间格式
yyyy-MM-dd a HH:mm:ss EEEE 2012-10-29 下午 16:25:27 星期一
yyyy-MM-dd'T'HH:mm:ss 2012-10-29T16:08:40
yyyy-MM-dd HH:mm:ss 2012-10-29 16:08:40
除了上面列出的,还可以指定很多格式,详见http://userguide.icu-project.org/formatparse/datetime
自定义月份星期等字符
Managing AM and PM Symbols 管理上午和下午的符号
AMSymbol 上午 AM
setAMSymbol:
PMSymbol 下午 PM
setPMSymbol:
实例:
//打印输出
2019-03-20 10:48:05.669092+0800 LTSCalendar[2566:302755] 上午样式----AM
2019-03-20 10:48:19.856121+0800 LTSCalendar[2566:302755] 下午样式----PM
2019-03-20 10:48:27.438735+0800 LTSCalendar[2566:302755] Wednesday, March 20, 2019 at 10:48:26 AM China Standard Time
Managing Weekday Symbols 管理周符号
weekdaySymbols // 星期日, 星期一, 星期二, 星期三, 星期四, 星期五, 星期六
setWeekdaySymbols:
shortWeekdaySymbols // 周日, 周一, 周二, 周三, 周四, 周五, 周六
setShortWeekdaySymbols:
veryShortWeekdaySymbols // 日, 一, 二, 三, 四, 五, 六
setVeryShortWeekdaySymbols:
standaloneWeekdaySymbols // 星期日, 星期一, 星期二, 星期三, 星期四, 星期五, 星期六
setStandaloneWeekdaySymbols:
shortStandaloneWeekdaySymbols // 周日, 周一, 周二, 周三, 周四, 周五, 周六
setShortStandaloneWeekdaySymbols:
veryShortStandaloneWeekdaySymbols // 日, 一, 二, 三, 四, 五, 六
setVeryShortStandaloneWeekdaySymbols:
Managing Month Symbols 管理月符号
月.pngmonthSymbols // 一月, 二月, 三月, 四月, 五月, 六月, 七月, 八月, 九月, 十月, 十一月, 十二月
setMonthSymbols:
shortMonthSymbols // 1月, 2月, 3月, 4月, 5月, 6月, 7月, 8月, 9月, 10月, 11月, 12月
setShortMonthSymbols:
veryShortMonthSymbols // 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12
setVeryShortMonthSymbols:
standaloneMonthSymbols // 一月, 二月, 三月, 四月, 五月, 六月, 七月, 八月, 九月, 十月, 十一月, 十二月
setStandaloneMonthSymbols:
shortStandaloneMonthSymbols // 1月, 2月, 3月, 4月, 5月, 6月, 7月, 8月, 9月, 10月, 11月, 12月
setShortStandaloneMonthSymbols:
veryShortStandaloneMonthSymbols // 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12
setVeryShortStandaloneMonthSymbols:
Managing Quarter Symbols 管理季度符号
quarterSymbols // 第一季度, 第二季度, 第三季度, 第四季度
setQuarterSymbols:
shortQuarterSymbols // 1季度, 2季度, 3季度, 4季度
setShortQuarterSymbols:
standaloneQuarterSymbols // 第一季度, 第二季度, 第三季度, 第四季度
setStandaloneQuarterSymbols:
shortStandaloneQuarterSymbols // 1季度, 2季度, 3季度, 4季度
setShortStandaloneQuarterSymbols:
Managing Era Symbols 管理时区
eraSymbols // 公元前, 公元
setEraSymbols:
longEraSymbols // 公元前, 公元
setLongEraSymbols: