前言

	@interface NSTimeZone : NSObject <NSCopying, NSSecureCoding>
  • NSTimeZone 表示时区信息。

1、NSTimeZone 时区的创建

	NSTimeZone *zone1 = [[NSTimeZone alloc] init];

	// 根据时区名称创建
NSTimeZone *zone2 = [[NSTimeZone alloc] initWithName:@"America/Chicago"];
NSTimeZone *zone3 = [NSTimeZone timeZoneWithName:@"America/Chicago"]; // 根据时区缩写创建
NSTimeZone *zone4 = [NSTimeZone timeZoneWithAbbreviation:@"EST"]; // 根据零时区的秒数偏移量创建
NSTimeZone *zone5 = [NSTimeZone timeZoneForSecondsFromGMT:28800];

2、NSTimeZone 时区的设置

	// 设置默认的时区
[NSTimeZone setDefaultTimeZone:[[NSTimeZone alloc] initWithName:@"America/Chicago"]]; NSTimeZone *systemZone = [NSTimeZone systemTimeZone]; // 本地时区可以被修改,而系统时区不能修改。
NSTimeZone *localZone = [NSTimeZone localTimeZone]; NSTimeZone *defaultZone = [NSTimeZone defaultTimeZone]; // NSCalendar 设置时区
/*
设置时区,设置为 GMT+8,即北京时间(+8)
*/
NSCalendar *calendar = [NSCalendar currentCalendar]; [calendar setTimeZone:[NSTimeZone timeZoneWithAbbreviation:@"CET"]];
[calendar setTimeZone:[NSTimeZone timeZoneForSecondsFromGMT:+28800]]; // NSDateFormatter 设置时区
NSDateFormatter *formatter = [[NSDateFormatter alloc] init]; // 设置时区,设置为 GMT
[formatter setTimeZone:[NSTimeZone timeZoneForSecondsFromGMT:0]];

3、NSTimeZone 时区的获取

	// 获取系统时区
NSTimeZone *zone1 = [NSTimeZone systemTimeZone]; // 获取本地时区
NSTimeZone *zone2 = [NSTimeZone localTimeZone]; // 获取默认时区
NSTimeZone *zone3 = [NSTimeZone defaultTimeZone];

4、获取时区的名称

	// 获取所有已知的时区名称
NSArray *zoneNames = [NSTimeZone knownTimeZoneNames]; NSTimeZone *zone = [NSTimeZone localTimeZone]; // 获取指定时区的名称
NSString *strZoneName = [zone name];

5、获取时区的缩写

	// 获取所有已知的时区缩写
NSDictionary *zoneAbbreviations = [NSTimeZone abbreviationDictionary]; NSTimeZone *zone = [NSTimeZone localTimeZone]; // 获取指定时区的缩写
NSString *zoneAbbreviation1 = [zone abbreviation]; // 获取指定时间所在时区名称缩写
NSString *zoneAbbreviation2 = [zone abbreviationForDate:[NSDate date]];

6、获取与零时区的间隔秒数

	NSTimeZone *zone = [NSTimeZone localTimeZone];

	// 获取当前时区与零时区的间隔秒数
NSInteger seconds1 = [zone secondsFromGMT]; // 获取指定时间所在时区与零时区的间隔秒数
NSInteger seconds2 = [zone secondsFromGMTForDate:[NSDate date]];

7、时区差值转换

	// 得到当前时间(世界标准时间 UTC/GMT)
NSDate *date = [NSDate date]; // 设置系统时区为本地时区
NSTimeZone *zone = [NSTimeZone systemTimeZone]; // 计算本地时区与 GMT 时区的时间差
NSInteger interval = [zone secondsFromGMT]; // 在 GMT 时间基础上追加时间差值,得到本地时间
date = [date dateByAddingTimeInterval:interval];

iOS - OC NSTimeZone 时区的更多相关文章

  1. iOS - Swift NSTimeZone 时区

    前言 public class NSTimeZone : NSObject, NSCopying, NSSecureCoding NSTimeZone 表示时区信息. 1.NSTimeZone 时区的 ...

  2. NSDate|NSTimeZone|时区|日历

    NSDate,NSDateFormatter以及时区转换-开发者-51CTO博客 iOS 时区转换 东八区 - 简书 iOS时间的时区转换以及一些方法记录 - 简书 iOS - OC NSTimeZo ...

  3. iOS - OC NSCalendar 日历

    前言 @interface NSCalendar : NSObject <NSCopying, NSSecureCoding> NSCalendar 对世界上现存的常用的历法进行了封装,既 ...

  4. iOS - OC 面向对象语法

    1.类 1)根类:因为类 NSObject 是层次结构的最顶层,因此称为根类. 可以将类称为子类(subclass)和父类(superclass),也可以将类称为子类和超类. 2)分类/类别(cate ...

  5. ios+oc面试题

    ios+oc面试题     浅复制和深复制的区别?//浅拷贝和深拷贝答案:浅层复制(copy):只复制指向对象的指针,而不复制引用对象本身.//通过对象的指针来访问这个对象深层复制(mutableCo ...

  6. iOS OC语言原生开发的IM模块--RChat

    iOS OC语言原生开发的IM模块,用于项目中需要原生开发IM的情况,具备发送文字.表情.语音.图片.视频等完整功能,包含图片预览视频播放等功能,此项目将会长期更新如有问题可以提出,我的邮箱:fshm ...

  7. NSTimeZone时区

    前言 NSTimeZone 表示时区信息. 1.NSTimeZone 时区的创建 NSTimeZone *zone1 = [[NSTimeZone alloc] init]; // 根据时区名称创建 ...

  8. iOS - OC NSDate 时间

    前言 NSDate @interface NSDate : NSObject <NSCopying, NSSecureCoding> NSDate 用来表示公历的 GMT 时间(格林威治时 ...

  9. iOS - OC Foundation 框架

    前言 框架是由许多类.方法.函数和文档按照一定的逻辑组织起来的集合,以使研发程序更容易. Foundation 框架:为所有程序开发奠定基础的框架称为 Foundation 框架. Cocoa :是指 ...

随机推荐

  1. PHP将多张小图拼接成一张大图

    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> < ...

  2. jQuery_Ajax_Json 异步接收PHP端传来的json数据

    [json]{"user_id":"1172940","rmb_point":"0","weixin_id&q ...

  3. hdwiki 软件包结构

    HDWiki软件包结构转载自http://www.chinabaike.com/z/shenghuo/pc/2011/0414/814308.html           根目录下的PHP文件     ...

  4. html 和 html5(一)(表格 | 列表 | 提交按钮 | 单选 |复选 | 框架 | 脚本 | html字符实体 )

    一.框架 使用iframe来显示目录链接页面 iframe可以显示一个目标链接的页面 目标链接的属性必须使用iframe的属性,如下实例: 实例 <iframe src="demo_i ...

  5. 在lua的string库和正则表达式

    一.前提要了解一下lua 的string几个方法 1. string库中所有的字符索引从前往后是1,2,...;从后往前是-1,-2,... 2. string库中所有的function都不会直接操作 ...

  6. A类地址

    一个A类IP地址由1字节(每个字节是8位)的网络地址和3个字节主机地址组成,网络地址的最高位必须是“0”.A类IP的地址第一个字段范围是0~127,但是由于全0和全1的地址用作特殊用途,实际可指派的第 ...

  7. ZOJ 3860: - Find the Spy

    3860 - Find the Spy Time Limit:2000MS     Memory Limit:65536KB     64bit IO Format:%lld & %llu S ...

  8. 迷之节约 分类: sdutOJ 最小生成树 2015-06-24 19:10 10人阅读 评论(0) 收藏

    迷之节约 Time Limit: 1000ms Memory limit: 65536K 有疑问?点这里^_^ 题目描述 FF超级有钱,最近又买了n个(1 <= n <= 300)小岛,为 ...

  9. 使用kendoui实现日期除去工作日

    <input type="text" id="div-timePrint" value="" readonly="false ...

  10. 关于List.ToArray()方法的效率测试

    之前一直认为因为List内部是数组,ToArray的实现只是将数组返回出去而已. 今天测了一下发现并不是那样 var a = new List<int>(); ; i < ; i++ ...