从 NSDateFormatterLongStyle 中删除格式化字符串的一部分
Remove some part of formatted string from NSDateFormatterLongStyle
当使用中文日期格式时,对于日期 Jan, 17, 2015
,如果在中文语言环境中,使用 NSDateFormatterLongStyle
,它将产生:
2015年1月17日
这很好,但是当我只想要这样的月份和年份时:
2015年1月
没有这样的预定义格式。
如果使用格式模板,模板将为 @"YYYY年MM月"
,但这对于日语等其他语言环境不可本地化。
有没有办法从所有语言环境的长样式格式中提取月份和年份?
游乐场测试:
let lc = "zh-cn";
var locale = NSLocale(localeIdentifier: lc);
var format = NSDateFormatter.dateFormatFromTemplate("yyyyMMM",
options: 0, locale: locale);
var formatter = NSDateFormatter();
formatter.dateFormat = format;
formatter.locale = locale;
formatter.stringFromDate(NSDate());
生产代码:
var format = NSDateFormatter.dateFormatFromTemplate("yyyyMMM",
options: 0, locale: nil);
var formatter = NSDateFormatter();
formatter.dateFormat = format;
let dateString = formatter.stringFromDate(NSDate());
当使用中文日期格式时,对于日期 Jan, 17, 2015
,如果在中文语言环境中,使用 NSDateFormatterLongStyle
,它将产生:
2015年1月17日
这很好,但是当我只想要这样的月份和年份时:
2015年1月
没有这样的预定义格式。
如果使用格式模板,模板将为 @"YYYY年MM月"
,但这对于日语等其他语言环境不可本地化。
有没有办法从所有语言环境的长样式格式中提取月份和年份?
游乐场测试:
let lc = "zh-cn";
var locale = NSLocale(localeIdentifier: lc);
var format = NSDateFormatter.dateFormatFromTemplate("yyyyMMM",
options: 0, locale: locale);
var formatter = NSDateFormatter();
formatter.dateFormat = format;
formatter.locale = locale;
formatter.stringFromDate(NSDate());
生产代码:
var format = NSDateFormatter.dateFormatFromTemplate("yyyyMMM",
options: 0, locale: nil);
var formatter = NSDateFormatter();
formatter.dateFormat = format;
let dateString = formatter.stringFromDate(NSDate());