`

(转)[IOS]ios获得时间小时的方法

    博客分类:
  • IOS
阅读更多

 

 

转自:http://www.cnblogs.com/zhangdadi/archive/2012/07/24/2606305.html

 

方法一:

NSDate *date = [NSDate date];
NSCalendar *cal = [NSCalendar currentCalendar];
NSDateComponents *hourComponents = [cal components:NSCalendarUnitHour fromDate:_datePicker.date];
NSDateComponents *minuteComponents = [cal components:NSCalendarUnitMinute fromDate:_datePicker.date];

NSString *strHour = [NSString stringWithFormat:@"hour is %d", [hourComponents hour]];
NSString *strMin = [NSString stringWithFormat:@"minute is %d", [hourComponents minute]];

  

方法二:(not work)

NSDate *date = [NSDate date];
NSDateFormatter *dateFormatter = [[[NSDateFormatter alloc] init] autorelease];
[dateFormatter setDateFormat:@"HH"];
NSString *strHour = [dateFormatter stringFromDate:date];

 

  

NSDateFormatter调整时间格式的代码

有时候需要将时间格式调整成自己希望的格式,这个时候我们可以用NSDateFormatter类来处理。
例如:
//实例化一个NSDateFormatter对象
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];

//设定时间格式,这里可以设置成自己需要的格式
[dateFormatter setDateFormat:@"yyyy-MM-dd HH:mm:ss"];

//用[NSDate date]可以获取系统当前时间
NSString *currentDateStr = [dateFormatter stringFromDate:[NSDate date]];

//输出格式为:2010-10-27 10:22:13
NSLog(@”%@”,currentDateStr);

//alloc后对不使用的对象别忘了release
[dateFormatter release];

 

 

NSDateComponents

NSDateComponents封装在一个可扩展的,面向对象的方式的日期组件。它是用来弥补时间的日期和时间组件提供一个指定日期:小时,分钟,秒,日,月,年,等等。它也可以用来指定的时间,例如,5小时16分钟。一个NSDateComponents对象不需要定义所有组件领域。当一个NSDateComponents的新实例被创建,日期组件被设置为NSUndefinedDateComponent。

 

一个NSDateComponents对象本身是毫无意义的;你需要知道它是针对什么日历解释,你需要知道它的值是否是正整数和值是多少。

 

NSDateComponents的实例不负责回答关于一个日期以外的信息,它是需要先初始化的。例如,如果你初始化一个对象为2004年5月6日,其星期几NSUndefinedDateComponent,不是星期四。要得到正确的星期几,你必须创建一个NSCalendar日历实例,创建一个NSDate对象并使用dateFromComponents:方法,然后使用components:fromDate:检索平周几

 

Getting Information About an NSDateComponents Object

获取一个NSDateComponents对象的信息

  • – era 时代
  • – year 年
  • – month 月
  • – day 天
  • – hour 时
  • – minute 分
  • – second 秒
  • – week
  • – weekday
  • – weekdayOrdinal
  • – quarter 季度

 

Setting Information for an NSDateComponents Object

设置一个NSDateComponents对象的信息

  • – setEra:
  • – setYear:
  • – setMonth:
  • – setDay:
  • – setHour:
  • – setMinute:
  • – setSecond:
  • – setWeek:
  • – setWeekday:
  • – setWeekdayOrdinal:
  • – setQuarter:
分享到:
评论

相关推荐

    高仿IOS时间日期选择器

    通过这个名为`DateAndTimePickDialog`的压缩包文件,开发者可以获得实现以上功能的源代码、示例项目或者库文件,从而快速在自己的应用中实现与iOS类似的日期时间选择功能。在实际使用时,开发者需要阅读相关文档,...

    iOS日期格式化类(刚刚、一分钟前、昨天、周几)

    在iOS开发中,日期和时间的格式化是一个常见的任务,特别是在显示用户友好的时间戳时。"iOS日期格式化类(刚刚、一分钟前、昨天、周几)"这个主题聚焦于如何利用Objective-C来处理日期的本地化显示,使得时间表述更加...

    ios-日期相减.zip

    - 计算差值:将得到的日期与原日期做减法,得到`NSTimeInterval`(Objective-C)或`TimeInterval`(Swift),这是以秒为单位的时间差。 - 将秒转换为天数:由于一天有86400秒,所以将时间差除以这个数值即可。 2....

    多年iOS开发经验总结

    接着通过除以3600(秒数转换为小时数)再除以60(得到分钟数),最终得出两个日期相差的小时数。这样的时间计算在处理日期时间相关功能时非常有用。 最后,关于UITableView中每个cell之间增加间距的问题,文档中并...

    ios-时间选择器.zip

    在这个"ios-时间选择器.zip"压缩包中,我们很可能是得到了一个名为"LMTowDatePicker"的自定义时间选择器组件,它可能是为了模仿知名应用钉钉中的时间选择功能,尤其是设定开始和结束时间的操作。 时间选择器在iOS...

    iOS 5 Programming中文版第十四章

    1. **理解和操作日期与时间**:了解iOS中用于处理日期和时间的基本类,如`NSDate`、`NSCalendar`、`NSDateFormatter`等,并学习如何使用这些类进行日期和时间的操作。 2. **创建和管理日程表**:介绍如何使用`...

    ios-绘画模拟时钟.zip

    5. **绘制指针**:根据当前时间计算时针、分针和秒针的长度和角度,然后同样使用直线绘制方法绘制。注意,时针较粗,分针次之,秒针最细,且秒针通常更长。 6. **结束绘图**:完成绘图后,使用`...

    ios-酒店预订日期选择.zip

    开发者会利用`NSCalendar`的`dateByAddingComponents(_:to:options:)`方法,向入住日期添加相应的日期组件(如`NSDateComponents`对象,其中day属性为离店日期减去入住日期的天数)来得到离店日期,然后比较这两个...

    获取全球当前所有时区的当前时间TestTimeZone功能ios源码.zip

    在iOS开发中,有时我们需要获取全球各个时区的当前时间,以便展示给用户或者进行一些时间相关的计算。这个"TestTimeZone功能ios源码.zip"压缩包包含了一个实现此类功能的示例项目。以下是对这个功能的详细解释和知识...

    ios-纯代码画 "日晷" 时钟.zip

    在iOS中,我们可以使用`Date`对象来获取当前时间,然后通过`Calendar`和`DateComponents`来提取小时和分钟信息。因为日晷的时辰与24小时制有所不同,所以我们可能需要进行一些转换,比如将小时除以2得到时辰数(忽略...

    IOS日历的实现,只需要简单的几步即可完成定制

    `EventStore`提供了`addObserver(forSelector:object:queue:using:)`方法,用于注册观察者以便在日历数据发生变化时得到通知。 总之,实现iOS自定义日历主要涉及`EventKit`框架的使用,包括获取权限、创建和管理...

    iOS将时间NSDate转化为毫秒时间戳的方法示例

    在百度等搜索引擎上面一搜索就是一大篇的东西,但是,大家有没有注意到的是 通过那些方法转换得到的时间戳是 10位的数值,这个数值在转化为 NSDate类型的时候,就会出点儿错,你会发现,每一个时间的 毫秒都是为000...

    iOS 获得现在的时间代码

    在iOS开发中,获取当前时间是一项常见的任务,用于记录用户活动、创建日志或更新界面显示等。在本文中,我们将深入探讨如何在Objective-C中使用实例...希望这个简单的示例能帮助你理解和应用iOS中获取当前时间的方法。

    广州iOS培训机构.docx编程资料

    - **市场稀缺性**:当前市场上iOS开发人才短缺,因此具备相关技能的求职者更容易获得高薪职位和发展机会。 #### 七、结论 广州的iOS培训机构通过提供高质量的培训课程和技术支持,帮助学员快速掌握iOS开发技能,并...

    iOS时间字符串格式化输出技巧详解

    例如,如果后台返回的时间字符串格式为"2017-04-16 13:08:06",我们可以创建一个`NSDateFormatter`并设置`dateFormat`为"yyyy-MM-dd HH:mm:ss",然后调用`dateFromString:`方法,传入时间字符串,即可得到对应的`...

    ios开发记录

    //initWithNibName将控制器绑定xib的方法,如果xib的名称和控制器的类名称相同的时候,直接写init(会自动绑定同名的xib)就可以,如果xib的名称和类名称不同的话,必须手动调用此方法来进行绑定 ...

    location 驱动 ios-14.0

    在iOS 14.0中,Location驱动对地理围栏的创建、管理和触发条件进行了优化,允许开发者定义更复杂的规则,如基于时间的围栏,提高用户体验。同时,用户可以更加精细地控制哪些应用可以使用地理围栏,并查看围栏活动的...

    ios-HWCalendar.zip

    3. **时间选择器**:如果启用,用户可以选择具体的小时和分钟,这对于预订系统或者日程安排应用非常有用。 4. **事件标注**:用户可以查看或添加特定日期上的事件,这在日历组件中通常以不同的颜色或图标表示。 5....

    iPad Air2升级iOS9怎么样.docx

    低功耗模式是iOS9的一个节能特性,根据苹果官方说法,它可以延长设备的电池寿命,手机设备开启此模式后续航时间最多可延长3小时。然而,对于电池容量较大的iPad Air2,此功能可能并不适用。 总的来说,iOS9在iPad ...

    IOS8操作系统功能演示.pdf

    信息应用在iOS 8中也得到了增强。群组信息管理更加灵活,用户可以为对话命名,方便日后查找;通过左右滑动可以在详细信息中添加或移除参与者,甚至自己退出对话。位置共享功能允许用户与群组成员共享当前位置,可以...

Global site tag (gtag.js) - Google Analytics