iOS - OC NSTimeZone 时区
前言
@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 时区的更多相关文章
- iOS - Swift NSTimeZone 时区
前言 public class NSTimeZone : NSObject, NSCopying, NSSecureCoding NSTimeZone 表示时区信息. 1.NSTimeZone 时区的 ...
- NSDate|NSTimeZone|时区|日历
NSDate,NSDateFormatter以及时区转换-开发者-51CTO博客 iOS 时区转换 东八区 - 简书 iOS时间的时区转换以及一些方法记录 - 简书 iOS - OC NSTimeZo ...
- iOS - OC NSCalendar 日历
前言 @interface NSCalendar : NSObject <NSCopying, NSSecureCoding> NSCalendar 对世界上现存的常用的历法进行了封装,既 ...
- iOS - OC 面向对象语法
1.类 1)根类:因为类 NSObject 是层次结构的最顶层,因此称为根类. 可以将类称为子类(subclass)和父类(superclass),也可以将类称为子类和超类. 2)分类/类别(cate ...
- ios+oc面试题
ios+oc面试题 浅复制和深复制的区别?//浅拷贝和深拷贝答案:浅层复制(copy):只复制指向对象的指针,而不复制引用对象本身.//通过对象的指针来访问这个对象深层复制(mutableCo ...
- iOS OC语言原生开发的IM模块--RChat
iOS OC语言原生开发的IM模块,用于项目中需要原生开发IM的情况,具备发送文字.表情.语音.图片.视频等完整功能,包含图片预览视频播放等功能,此项目将会长期更新如有问题可以提出,我的邮箱:fshm ...
- NSTimeZone时区
前言 NSTimeZone 表示时区信息. 1.NSTimeZone 时区的创建 NSTimeZone *zone1 = [[NSTimeZone alloc] init]; // 根据时区名称创建 ...
- iOS - OC NSDate 时间
前言 NSDate @interface NSDate : NSObject <NSCopying, NSSecureCoding> NSDate 用来表示公历的 GMT 时间(格林威治时 ...
- iOS - OC Foundation 框架
前言 框架是由许多类.方法.函数和文档按照一定的逻辑组织起来的集合,以使研发程序更容易. Foundation 框架:为所有程序开发奠定基础的框架称为 Foundation 框架. Cocoa :是指 ...
随机推荐
- 深拷贝 vs 浅拷贝 释放多次
如果类中有需要new的数据,那么一定要注意delete; 如果只free一次,但是提示free多次,一定要注意了,有可能是因为你没有定义拷贝函数! 以我的亲身经历来说: operater *(mycl ...
- Binary Tree Level Order Traversal II
/** * Definition for a binary tree node. * struct TreeNode { * int val; * TreeNode *left; * TreeNode ...
- 在 VirtualBox 中 CentOS 网络设置
转自:本文发表于水景一页.永久链接:<http://cnzhx.net/blog/minimal-centos-in-virtualbox/>.转载请保留此信息及相应链接. 4. 设置¶ ...
- 【PHP设计模式 01_DuoTai.php】多态的说明
<?php /** * [多态] * 定义一个抽象类:Tiger,有两个子类:XTiger 和 MTiger */ header("Content-type: text/html; c ...
- Android 内存优化 (防Memory Leak)
在之前的 Android 内存管理 &Memory Leak & OOM 分析 中,说到了Android的内存管理相关的原理,也能了解到Android Memory Leak 和 ...
- android内存优化相关1
第一种策略,是释放显示相关的内存.这是我们针对系统APP采用的一种调优策略. 图形内容,俗称位图是非常占用内存的,针对位图,我们采用异步加载的方法,将位图内容信息和位图的状态信息分别进行存储,将内容信 ...
- HDU 4715:Difference Between Primes
Difference Between Primes Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Jav ...
- python安装numpy科学计算模块
解决两个问题: (1)Import Error: No module named numpy (2)Python version 2.7 required, which was not found i ...
- Linux文件描述符与打开文件之间的区别(转载)
转载请说明出处:http://blog.csdn.net/cywosp/article/details/38965239 1. 概述 在Linux系统中一切皆可以看成是文件,文件又可分为: ...
- 用python requests库写一个人人网相册爬虫
担心人人网会黄掉,写个爬虫,把我的相册照片都下载下来.代码如下: # -*- coding: utf-8 -*- import requests import json import os def m ...