把字符串转成NSDate时间格式 并显示时间戳
来源:互联网 发布:linux系统注销超级用户 编辑:程序博客网 时间:2024/06/05 08:34
获取时间的方法:获取时间
我们还是先详细说明一下 日期格式 吧
- 年
- y 将年份 (0-9) 显示为不带前导零的数字
- yy 以带前导零的两位数字格式显示年份
- yyy 以四位数字格式显示年份
- yyyy 以四位数字格式显示年份
- 月
- M 将月份显示为不带前导零的数字(如一月表示为 1)
- MM 将月份显示为带前导零的数字(例如 01/12/01)
- MMM 将月份显示为缩写形式(例如 Jan)
- MMMM 将月份显示为完整月份名(例如 January)
- 一月 Jan January
- 二月 Feb February
- 三月 Mar March
- 四月 Apr April
- 五月 May May
- 六月 Jun June
- 七月 Jul July
- 八月 Aug August
- 九月 Sep September
- 十月 Oct October
- 十一月 Nov November
- 十二月 Dec December
- 日
- d 将日显示为不带前导零的数字(如 1)
- dd 将日显示为带前导零的数字(如 01)
- 星期
- EEE 将日显示为缩写形式(例如 Sun)
- EEEE 将日显示为全名(例如 Sunday)
- 星期一 Mon Monday
- 星期二 Tue Tuesday
- 星期三 Wed Wednesday
- 星期四 Thu Thursday
- 星期五 Fri Friday
- 星期六 Sat Saturday
- 星期天 Sun Sunday
- 小时
- h 使用 12 小时制将小时显示为不带前导零的数字(例如 1:15:15 PM)
- hh 使用 12 小时制将小时显示为带前导零的数字(例如 01:15:15 PM)
- H 使用 24 小时制将小时显示为不带前导零的数字(例如 1:15:15)
- HH 使用 24 小时制将小时显示为带前导零的数字(例如 01:15:15)
- 分钟
- m 将分钟显示为不带前导零的数字(例如 12:1:15)
- mm 将分钟显示为带前导零的数字(例如 12:01:15)
- 秒
- s 将秒显示为不带前导零的数字(例如 12:15:5)
- ss 将秒显示为带前导零的数字(例如 12:15:05)
- f 显示秒的小数部分
- ff 将精确显示到百分之一秒
- ffff 将精确显示到万分之一秒
- 用户定义格式中最多可使用七个 f 符号
- 上午&下午
- t 使用 12 小时制
- 中午之前任一小时显示大写的 A
- 中午到 11:59 PM 之间的任一小时显示大写的 P
- tt 对于使用 12 小时制的区域设置
- 中午之前任一小时显示大写的 AM
- 中午到 11:59 PM 之间的任一小时显示大写的 PM
- 对于使用 24 小时制的区域设置,不显示任何字符
- t 使用 12 小时制
- 时区
- z 显示不带前导零的时区偏移量
- zz 显示带前导零的时区偏移量(例如 -08)
- zzz 显示完整的时区偏移量(例如 -0800)
- 纪元
- gg 显示时代/纪元字符串(例如 A.D.)
首先我们得到的时间属性createdTime后在.m文件里实现get方法。
-(NSString *)createdTime{
NSDateFormatter *formatter = [NSDateFormatter new];// Fri Aug 28 16:34:36 +0800 2009// EEE(星期) MM(月) dd(日) HH:mm:ss Z(时区) yyyy(年) formatter.dateFormat = @"EEE MM dd HH:mm:ss Z yyyy"; //设置时区 formatter.locale = [NSLocale localeWithLocaleIdentifier:@"en_US"]; NSDate *weiboDate = [formatter dateFromString:_created_at];
formatter.dateFormat,是什么格式,那要看你的字符串是怎么排序的,自己调动年月日格式即可
//formatter.dateFormat =@"EEE MMM dd HH:mm:ss Z yyyy";
weiboDate,就是通过字符串得到的formatter格式的时间戳,我们就可以拿它去和现在的时间去进行比较了;
//下面的就是区分这个时间距离现在的时间点
//得到距1970年秒数 long weiboTime = [weiboDate timeIntervalSince1970];// 得到当前时间距1970年秒数 long nowTime = [[NSDate new] timeIntervalSince1970]; long time = nowTime - weiboTime; //判断是否在1分钟内 if (time<=60) { return @"刚刚"; }else if (time>60&&time<=3600) { return [NSString stringWithFormat:@"%ld分钟前",time/60]; }else if (time>3600&&time<=3600*24) {//判断一天内 return [NSString stringWithFormat:@"%ld小时前",time/3600]; }else{ // 显示具体日期 formatter.dateFormat = @"MM-dd"; return [formatter stringFromDate:weiboDate]; }}
以上代码块,都写在get方法内,如果可以直接获得NSDate时间戳,就不用通过NSString转换了。
1 0
- 把字符串转成NSDate时间格式 并显示时间戳
- oracle将unix时间戳格式转成日期格式显示
- 关于js把时间戳转成日期格式的问题
- 把数字(时间戳)转成日期格式
- 通过url获取视频的时间长度并转成时间格式显示
- 时间字符串string转换为时间格式nsdate
- js时间戳转成时间格式
- 如何获得本地时间并转成字符串
- (python)把带时区的时间字符串转成datetime格式
- 字符串转NSDate时间
- 时间戳转成字符串时间或者日期
- NSDate UI时间显示及格式的设定
- iOS ISO8601格式的时间日期字符串转换成NSDate
- iOS时间戳字符串NSdate转换demo
- ios 时区,时间格式NSDate
- C#把字符串转时间格式
- js时间戳怎么转成日期格式
- js时间戳怎么转成日期格式
- php中soap 的使用实例无需手写WSDL文件,提供自动生成WSDL文件类
- SpringMvc教程(十)--如何使用拦截器
- 接上上篇目的demo
- 如何查看发起session的客户端ip地址
- MVC设计思想
- 把字符串转成NSDate时间格式 并显示时间戳
- Android 7.0 ActivityManagerService(5) 广播(Broadcast)相关流程分析
- js浏览器检测的一些方法
- mysqlroot密码
- 文章标题
- 第十五周 项目三归并排序算法的改进
- win10系统配置java的环境变量
- 第十四周项目2-二叉树排序树中查找的路径
- tomcat等部分java容器的ssl证书部署