根据日期计算发布时间段(NSCalendar)
2024-09-08 07:28:51
// 返回发布时间dateWithString
- (NSString *)backReleaseTimeWithDateStr:(NSString *)dateWithString{
// 获取当前NSCalendar
NSCalendar *calendar = [NSCalendar currentCalendar];
// 设置日期格式
NSDateFormatter *formatter = [[NSDateFormatter alloc]init];
formatter.dateFormat = @"yyyy-MM-dd HH:mm:ss";
//入参 发布日期
NSDate *releaseTimer = [formatter dateFromString:dateWithString];
if ([calendar isDateInToday:releaseTimer]) { // 今天
//当前时间
NSDate *nowDate = [NSDate date];
// 获得日期之间的间隔
NSCalendarUnit unit = NSCalendarUnitYear | NSCalendarUnitMonth | NSCalendarUnitDay | NSCalendarUnitHour | NSCalendarUnitMinute | NSCalendarUnitSecond;
NSDateComponents *components = [calendar components:unit fromDate:releaseTimer toDate:nowDate options:];
if (components.hour >= ) {
// formatter.dateFormat = @"今天 HH:mm";
// return [formatter stringFromDate:releaseTimer];
return [NSString stringWithFormat:@"%zd小时前",components.hour];
}else if(components.minute >= ){
return [NSString stringWithFormat:@"%zd分钟前",components.minute];
}else{
return @"刚刚";
}
}else if([calendar isDateInYesterday:releaseTimer]){ // 昨天
formatter.dateFormat = @"昨天 HH:mm";
return [formatter stringFromDate:releaseTimer];
}else { // 其他
formatter.dateFormat = @"MM-dd HH:mm";
return [formatter stringFromDate:releaseTimer];
}
return dateWithString;
}
最新文章
- hadoop 2.7.3本地环境运行官方wordcount-基于HDFS
- POJ1753(位操作和枚举)
- ASCII字符集中的功能/控制字符
- Tomcat安装后,远程IP无法访问的问题。
- 这里有个坑---entity为null的问题
- 九校联考 终&;启
- Javascript的console.log()用法
- [问题2014A05] 解答
- LinQ的一些基本语句
- svn 安装 、使用(2)
- linux中的find命令——查找文件名
- android微信简单界面
- Asp.net mvc中Controller的返回值
- Angular DirtyChecking(脏值检查) $watch, $apply, $digest
- Python动态绑定属性slots的使用
- Mac安装Python3后,如何将默认执行的Python2改为Pyhton3
- 【转】FFmpeg获取DirectShow设备数据(摄像头,录屏)
- React Native之FlatList的介绍与使用实例
- Where is NuGet in VS2017 Community?
- layui table 行号