NSDate使用
//获取当前日期,时间
+(NSDate *)getCurrentDate{
NSDate *now = [NSDate date];
return now;
}
//将日期转换为字符串(日期,时间)
+(NSString *)getDateStringFromDate:(NSDate *)date{
NSInteger location = 0;
NSString *timeStr = @"";
NSDateFormatter *formatter = [[NSDateFormatter alloc] init];
[formatter setLocale:[[NSLocale alloc] initWithLocaleIdentifier:@"en_US"]];
[formatter setDateFormat:@"HH:mm:a"];
NSString *ampm = [[[formatter stringFromDate:date] componentsSeparatedByString:@":"] objectAtIndex:2];
timeStr = [formatter stringFromDate:date];
NSRange range = [timeStr rangeOfString:[NSString stringWithFormat:@":%@",ampm]];
location = range.location;
NSString *string = [timeStr substringToIndex:location];
timeStr = [NSString stringWithFormat:@"%@ %@",ampm,string];
NSString *dateStr = @"";
NSDateFormatter *Dformatter = [[NSDateFormatter alloc] init];
[Dformatter setLocale:[[NSLocale alloc] initWithLocaleIdentifier:@"en_US"]];
[Dformatter setDateFormat:@"yyyy-MM-dd"];
dateStr = [Dformatter stringFromDate:date];
return [NSString stringWithFormat:@"%@ %@",dateStr,timeStr];
}
//计算两个日期之间的差距,过了多少天。。
+(NSInteger)getDateToDateDays:(NSDate *)date withSaveDate:(NSDate *)saveDate{
NSCalendar* chineseClendar = [ [ NSCalendar alloc ] initWithCalendarIdentifier:NSGregorianCalendar ];
NSUInteger unitFlags = NSHourCalendarUnit | NSMinuteCalendarUnit |
NSSecondCalendarUnit | NSDayCalendarUnit | NSMonthCalendarUnit | NSYearCalendarUnit;
NSDateComponents *cps = [ chineseClendar components:unitFlags fromDate:date toDate:saveDate options:0];
NSInteger diffDay = [ cps day ];
return diffDay;
}
例:NSDate *lastDate = [self getSaveDate];//saveDate通过将NSDate转换为NSString来保存
currentDate = [NSDate date];
NSInteger day = [DateHelper getDateToDateDays:currentDate withSaveDate: lastDate];
//日期转字符串
+ (NSString * )NSDateToNSString: (NSDate * )date {
NSDateFormatter * formatter = [[NSDateFormatter alloc] init];
[formatter setDateFormat: @"yyyy-MM-dd HH:mm:ss"];
NSString *dateString = [formatter stringFromDate:date];
return dateString;
}
//字符串转日期
+ (NSDate * )NSStringToNSDate: (NSString * )string {
NSDateFormatter * formatter = [[NSDateFormatter alloc] init];
[formatter setDateFormat: kDEFAULT_DATE_TIME_FORMAT];
NSDate *date = [formatter dateFromString :string];
return date;
}
//1970年到现在的秒数转换成时间显示
- (NSString *)bySecondGetDate:(NSString *)second{
NSDateFormatter *formatter = [[NSDateFormatter alloc] init];
[formatter setDateFormat:@"yyyy年MM月dd日 HH:mm:ss"];
NSString *dateLoca = [NSString stringWithFormat:@"%@",second];
NSTimeInterval time=[dateLoca doubleValue];
NSDate *detaildate=[NSDate dateWithTimeIntervalSince1970:time];
NSString *timestr = [formatter stringFromDate:detaildate];
return timestr;
}
NSDate使用的更多相关文章
- iOS NSDate等时间类的使用
一.NSDate NSDate对象用来表示一个具体的时间点. NSDate是一个类簇,我们所使用的NSDate对象,都是NSDate的私有子类的实体. NSDate存储的是GMT时间,使用的时候会根据 ...
- Foundation框架下的常用类:NSNumber、NSDate、NSCalendar、NSDateFormatter、NSNull、NSKeyedArchiver
========================== Foundation框架下的常用类 ========================== 一.[NSNumber] [注]像int.float.c ...
- 【原】iOS学习之NSDate在项目中的一些类目扩展
在项目中,我们可能会面对各种各样的对于时间的需求,在这里提供几种可能会用到的需求代码 1.与今天的时间做比较,返回日期差值 代码: - (NSInteger)compareWithToday { NS ...
- 时间戳转化为日期TimeStamp转NSDate转NSString
//时间戳处理 NSInteger time = [self.album.updatedAt integerValue] / 1000; NSNumber *timer = [NSNumber num ...
- 【Objective-C】NSDate详解及获取当前时间等常用操作
NSDate类用于保存时间值,同时提供了一些方法来处理一些基于秒级别时差(Time Interval)运算和日期之间的早晚比较等. 1. 创建或初始化可用以下方法 用于创建NSDate实例的类方法有 ...
- iOS NSDate本地化
1. NSDateFormatter *outputFormatter = [[NSDateFormatter alloc] init]; [outputFormatter setLocale:[NS ...
- NSDate和NSDateFormatter 相关应用代码示例
此方法用来计算当前时间与目标时间的先后顺序: -(NSDate *)calculateTimeWithCurrentTime:(NSDate *)currentDate{ //将当前时间转为本地时区 ...
- OC — (Foundation框架-NSDate)
NSDate:是OC中处理日期时间的一个类,可以用来表示时间 获取当前的时间 NSDate *d = [NSDate date]; 创建日期时间对象 NSLog输出是当前时间 格林时间 格式化显示时间 ...
- NSDate 时间
NSDate *date=[NSDate date]; NSDateFormatter *formatter=[[NSDateFormatter alloc]init]; formatter.date ...
- 黑马程序员_ Objective-c 之Foundation之NSNumber ,NSValue, NSDate
Objective-c 之Foundation之NSNumber ,NSValue, NSDate 1.NSNumber具体用法如下: 在Objective-c中有int的数据类型,那为什么还要使用数 ...
随机推荐
- C#中一个关于不同窗体间的颜色参数的传递
1目标是 在弹出菜单中选择颜色,在主菜单中对控件进行操作(弹出菜单选择的颜色就是主菜单控件的颜色) 2颜色属性需要来回转换(也许不用转换,暂时还不会,有会的提醒下,TKS) 3用到一个颜色控件(col ...
- HDU 4825:Xor Sum(Trie)
http://acm.hdu.edu.cn/showproblem.php?pid=4825 题意:给出N个数,M个询问,每个询问给出一个X,问在这N个数中哪个数和X异或后结果最大. 思路:可以用Tr ...
- WIN7 64位系统注册银行支付组件
WIN7 64位系统注册银行支付组件目前只尝试注册了银联的chinapay.dll和工行的icbcebankutil.dll 1.将dll文件拷贝到windows\syswow64\文件夹下(Win7 ...
- js笔记---封装一般运动
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
- javaBean的使用方法;
在jsp页面中使用javaBean:三个标签: <jsp:useBean>标签 <jsp:setProperty>标签 <jsp:getProperty>标签 首先 ...
- 20150625_Andriod_01_ListView1_条目显示
android listview 参考地址: http://www.cnblogs.com/zhengbeibei/archive/2013/05/14/3078805.html http://xy ...
- JAVA基础知识之练习题——集合
练习一: 创建一个Set集合,保存用户输入的数据 具体代码实现如下面代码中的testSet()方法. 知识点: Set集合的基本特征是元素不允许重复.HashSet不保存元素顺序,LinkedHash ...
- python 数据加密以及生成token和token验证
代码如下: # -*- coding: utf-8 -*- from passlib.apps import custom_app_context as pwd_context import conf ...
- Ajax 用法
Ajax 用法 var total=100; var orderName='sssss'; var orderDescrib='dddd ...
- Java中Properties类的操作配置文件
知识学而不用,就等于没用,到真正用到的时 候还得重新再学.最近在看几款开源模拟器的源码,里面涉及到了很多关于Properties类的引用,由于Java已经好久没用了,而这些模拟器大多用 Java来写, ...