尝试在iOS中的NSDateFormatter对象中大写缩短的星期几

尝试在iOS中的NSDateFormatter对象中大写缩短的星期几,第1张

概述我正在iOS中的应用程序上工作,我有一个NSDateFormatter对象,如下所示: NSDate *today = [NSDate date]; NSDateFormatter *dateFormat = [[NSDateFormatter alloc] init]; [dateFormat setDateFormat:@"EEE, MMM. dd"]; NSString *dateSt 我正在iOS中的应用程序上工作,我有一个NSDateFormatter对象,如下所示:

NSDate *today = [NSDate date]; NSDateFormatter *dateFormat = [[NSDateFormatter alloc] init]; [dateFormat setDateFormat:@"EEE,MMM. dd"]; Nsstring *dateString = [dateFormat stringFromDate:today]; NSLog(@"%@",dateString);

我的输出是:12月10日星期二,我想显示:TUE,12月10日.

我的问题是,星期几只有首字母大写,而不是整天(即我得到“星期二”),我想显示“TUE”).月份的格式很好(即“Dec”我很满意).

我已经检查了日期格式的规格,遗憾的是,使用NSDateFormatter类没有传统方法.有没有办法解决这个问题,仍然可以在一周中将所有缩写字母大写,而不会触及月份?

解决方法 没有办法直接使用日期格式化程序.最简单的方法是在格式化日期后处理字符串.

Nsstring *dateString = [dateFormat stringFromDate:today];dateString = [Nsstring stringWithFormat:@"%@%@",[[dateString substringToIndex:3] uppercaseString],[dateString substringFromIndex:3]];

更新:

以上假设EEE总是给出3个字母的工作日缩写.有可能存在某些区域设置或语言,此假设无效.那么更好的解决方案如下:

Nsstring *dateString = [dateFormat stringFromDate:today];NSRange commarange = [dateString rangeOfString:@","];dateString = [Nsstring stringWithFormat:@"%@%@",[[dateString substringToIndex:commarange.location] uppercaseString],[dateString substringFromIndex:commarange.location]];
总结

以上是内存溢出为你收集整理的尝试在iOS中的NSDateFormatter对象中大写缩短的星期几全部内容,希望文章能够帮你解决尝试在iOS中的NSDateFormatter对象中大写缩短的星期几所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1007049.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-22
下一篇 2022-05-22

发表评论

登录后才能评论

评论列表(0条)

保存