前言

	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. DBLINK的session无法关闭,报异常!

    ------解决方法-------------------------------------------------------- --ALTER SESSION alter session clo ...

  2. Linux批量修改用户密码

    对系统定期修改密码是一个很重要的安全常识,通常,我们修改用户密码都使用passwd user这样的命名来修改密码,但是这样会进入交互模式,即使使用脚本也不能很方便的批量修改,除非使用expect这样的 ...

  3. POJ 3349:Snowflake Snow Snowflakes(数的Hash)

    http://poj.org/problem?id=3349 Snowflake Snow Snowflakes Time Limit: 4000MS   Memory Limit: 65536K T ...

  4. hdwiki model目录下的函数类

    model目录下的函数类    actions.class.php(站内地图相关) getHTML:获得页面菜单和相关信息 getMap:生成站内地图 adv.class.php 对wiki_adve ...

  5. linux新内核的时钟机制代码

    http://blog.chinaunix.net/uid-22810130-id-384173.html 如果说cfs是linux的一个很有创意的机制的话,那么linux中另一个创意就是nohz,我 ...

  6. easyrtc-server在ubuntu14.04上的安装方法

    easyrtc 官网 http://easyrtc.com/ 1.安装nodejs,安装npm (不知道如何安装请google一下) 2. 查看运行easyrtc 所需要的js 包,在easyrtc ...

  7. 【算法】简单动态规划——三逆数的O(N^2)解法!

    问题描述: 三逆数定义:给一个数的序列A[0,1,....N-1]),当i<j<k且A[i]>A[j]>A[k]时,称作ai,aj,ak为一个三逆数. 现在给定一个长度为N的数 ...

  8. HDU(3790),最短路二级标准

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=3790 最短路径问题 Time Limit: 2000/1000 MS (Java/Others)    ...

  9. Poj(3687),拓扑排序,

    题目链接:http://poj.org/problem?id=3687 题意:n个重量为1~n的球,给定一些编号间的重量比较关系,现在给每个球编号,在符合条件的前提下使得编号小的球重量小.(先保证1号 ...

  10. LoadRunner使用之变量关联

    性能测试LR小结之参数关联(LoadRunner11.0) 关联对于LR是经常需要用到的,本章使用简单登录来介绍关联功能. 1.       Q:何为关联? 所谓的关联就是把脚本中某些写死的代码(ha ...