前言

	public class NSTimeZone : NSObject, NSCopying, NSSecureCoding
  • NSTimeZone 表示时区信息。

1、NSTimeZone 时区的创建

	// 根据时区名称创建
let zone1:NSTimeZone? = NSTimeZone(name: "America/Chicago") // 根据时区缩写创建
let zone2:NSTimeZone? = NSTimeZone(abbreviation: "EST") // 根据零时区的秒数偏移量创建,+28800 为 GMT+8,即北京时间(+8)
let zone3:NSTimeZone = NSTimeZone(forSecondsFromGMT: +28800)

2、NSTimeZone 时区的设置

	// 设置默认的时区
NSTimeZone.setDefaultTimeZone(NSTimeZone(name: "America/Chicago")!) let defaultZone = NSTimeZone.defaultTimeZone() let systemZone = NSTimeZone.systemTimeZone() // 本地时区可以被修改,而系统时区不能修改
let localZone = NSTimeZone.localTimeZone() // NSCalendar 设置时区 let calendar:NSCalendar = NSCalendar.currentCalendar() // 设置时区,设置为 GMT+8,即北京时间(+8)
calendar.timeZone = NSTimeZone(abbreviation: "EST")! // 设置时区,设置为 GMT+8,即北京时间(+8)
calendar.timeZone = NSTimeZone(forSecondsFromGMT: +28800) // NSDateFormatter 设置时区 let formatter:NSDateFormatter = NSDateFormatter() formatter.timeZone = NSTimeZone(forSecondsFromGMT: +28800)

3、NSTimeZone 时区的获取

	// 获取系统时区
let systemZone = NSTimeZone.systemTimeZone() // 获取本地时区
let localZone = NSTimeZone.localTimeZone() // 获取默认时区
let defaultZone = NSTimeZone.defaultTimeZone()

4、获取时区的名称

	// 获取所有已知的时区名称
let zoneNames = NSTimeZone.knownTimeZoneNames() // 获取指定时区的名称
let localZoneName = NSTimeZone.localTimeZone().name

5、获取时区的缩写

	// 获取所有已知的时区缩写
let zoneAbbreviations = NSTimeZone.abbreviationDictionary() // 获取指定时区的缩写
let localZoneAbbreviation = NSTimeZone.localTimeZone().abbreviation // 获取指定时间所在时区名称缩写
let dateLocalAbbreviation = NSTimeZone.localTimeZone().abbreviationForDate(NSDate())

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

	let zone = NSTimeZone.localTimeZone()

	// 获取当前时区与零时区的间隔秒数
let seconds1 = zone.secondsFromGMT // 获取指定时间所在时区与零时区的间隔秒数
let seconds2 = zone.secondsFromGMTForDate(NSDate())

7、时区差值转换

	// 得到当前时间(世界标准时间 UTC/GMT)
var date:NSDate = NSDate() // 设置系统时区为本地时区
let zone:NSTimeZone = NSTimeZone.systemTimeZone() // 计算本地时区与 GMT 时区的时间差
let second:Int = zone.secondsFromGMT // 在 GMT 时间基础上追加时间差值,得到本地时间
date = date.dateByAddingTimeInterval(NSTimeInterval(second))

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

  1. iOS - OC NSTimeZone 时区

    前言 @interface NSTimeZone : NSObject <NSCopying, NSSecureCoding> NSTimeZone 表示时区信息. 1.NSTimeZon ...

  2. NSDate|NSTimeZone|时区|日历

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

  3. iOS - Swift NSCalendar 日历

    前言 public class NSCalendar : NSObject, NSCopying, NSSecureCoding NSCalendar 对世界上现存的常用的历法进行了封装,既提供了不同 ...

  4. iOS swift的xcworkspace多项目管理(架构思想)

    iOS  swift的xcworkspace多项目管理(架构思想) 技术说明: 今天在这里分享 swift下的 xcworkspace多项目管理(架构思想),能为我们在开发中带来哪些便捷?能为我们对整 ...

  5. iOS Swift 模块练习/swift基础学习

    SWIFT项目练习     SWIFT项目练习2 iOS Swift基础知识代码 推荐:Swift学习使用知识代码软件 0.swift中的宏定义(使用方法代替宏) 一.视图  +控件 1.UIImag ...

  6. ios swift 实现饼状图进度条,swift环形进度条

    ios swift 实现饼状图进度条 // // ProgressControl.swift // L02MyProgressControl // // Created by plter on 7/2 ...

  7. Building gRPC Client iOS Swift Note Taking App

    gRPC is an universal remote procedure call framework developed by Google that has been gaining inter ...

  8. iOS Swift WisdomScanKit图片浏览器功能SDK

    iOS Swift WisdomScanKit图片浏览器功能SDK使用 一:简介      WisdomScanKit 由 Swift4.2版编写,完全兼容OC项目调用. WisdomScanKit的 ...

  9. iOS Swift WisdomScanKit二维码扫码SDK,自定义全屏拍照SDK,系统相册图片浏览,编辑SDK

    iOS Swift WisdomScanKit 是一款强大的集二维码扫码,自定义全屏拍照,系统相册图片编辑多选和系统相册图片浏览功能于一身的 Framework SDK [1]前言:    今天给大家 ...

随机推荐

  1. 点评js异步加载的4种方式

    主要介绍了点评js异步加载的4种方式,帮助大家更全面的了解js异步加载方式,感兴趣的小伙伴们可以参考一下 js异步加载的4种方式,点评开始. <!DOCTYPE html> <htm ...

  2. iOS 加载图片选择imageNamed 方法还是 imageWithContentsOfFile?

      Apple官方的文档为生成一个UIImage对象提供了两种方法: 1. imageNamed,其参数为图片的名字: 2. imageWithContentsOfFile,其参数也是图片文件的路径. ...

  3. UVA 12950 : Even Obsession(最短路Dijkstra)

    https://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&page=show_problem& ...

  4. move语义和右值引用

    C++11支持move语义,用以避免非必要拷贝和临时对象. 具体内容见收藏中的“C++右值引用” .

  5. JavaScript DOM 编程艺术(第2版)读书笔记(5)

    最佳实践 平稳退化 网站的访问者完全有可能使用的是不支持Javascript的浏览器,还有一种可能是虽然浏览器支持Javascript,但用户已经禁用它了.如果没有考虑到这种情况,人们在访问你们的网站 ...

  6. Ubuntu中root用户和user用户的相互切换(转)

    Ubuntu是最近很流行的一款Linux系统,因为Ubuntu默认是不启动root用户,现在介绍如何进入root的方法. (1)从user用户切换到root用户 不管是用图形模式登录Ubuntu,还是 ...

  7. SQL中join的用法

    关于sql语句中的连接(join)关键字,是较为常用而又不太容易理解的关键字,下面这个例子给出了一个简单的解释 --建表table1,table2:create table table1(id int ...

  8. 分组排序SQL

    SELECT * FROM (SELECT columns,ROWNUM AS RN FROM (SELECT DISTINCT columns FROM table WHERE 1=1)) T WH ...

  9. oracle中的自动增长

    create table test( id int not null primary key, name varchar2(20), sex int) ; create sequence t -> ...

  10. Poj(1459),最大流,EK算法

    题目链接:http://poj.org/problem?id=1459 Power Network Time Limit: 2000MS   Memory Limit: 32768K Total Su ...