IOS 世界标准时间UTC /GMT 转为当前系统时区对应的时间

从ADC0804实战解析嵌入式数据采集:原理、驱动与稳定性设计 模数转换器(ADC)是连接模拟世界与数字系统的核心器件,其核心原理是通过逐次逼近等方法将连续模拟信号转换为离散数字量。在嵌入式系统中,ADC的性能直接决定了数据采集的精度与可靠性。从基础的查询法、中断驱动到软件滤波与校准,这些技术共同构建了高稳定性数据采集模块的基石。无论是经典的ADC0804这类独立芯片,还是现代MCU内置的ADC外设,其应用场景广泛覆盖了传感器信号采集、电源监控、仪器仪表等关键领域。本文以ADC0804为例,深入探讨了其外围电路设计要点,如参考电压选择与抗混叠滤波,并详细分析了如何通过优 阅读详情

  1. - (NSDate *)getNowDateFromatAnDate:(NSDate *)anyDate  
  2. {  
  3.     //设置源日期时区  
  4.     NSTimeZone* sourceTimeZone = [NSTimeZone timeZoneWithAbbreviation:@"UTC"];//或GMT  
  5.     //设置转换后的目标日期时区  
  6.     NSTimeZone* destinationTimeZone = [NSTimeZone localTimeZone];  
  7.     //得到源日期与世界标准时间的偏移量  
  8.     NSInteger sourceGMTOffset = [sourceTimeZone secondsFromGMTForDate:anyDate];  
  9.     //目标日期与本地时区的偏移量  
  10.     NSInteger destinationGMTOffset = [destinationTimeZone secondsFromGMTForDate:anyDate];  
  11.     //得到时间偏移量的差值  
  12.     NSTimeInterval interval = destinationGMTOffset - sourceGMTOffset;  
  13.     //转为现在时间  
  14.     NSDate* destinationDateNow = [[[NSDate alloc] initWithTimeInterval:interval sinceDate:anyDate] autorelease];  
  15.     return destinationDateNow;  
  16. }  


例子演示:我的机器是北京时区东八区。

     //2013-08-03T12:53:51+0800     UTC时间格式下的北京时间,可以看到北京时间= UTC + 8小时。

    NSDateFormatter *dateFormatter = [[NSDateFormatteralloc]init];

    [dateFormatter setDateFormat:@"yyyy-MM-dd'T'HH:mm:ssZ"];

    NSDate *localDate = [dateFormatter dateFromString:@"2013-08-03T04:56:52+0000"];      +0000 表示的是当前时间是个世界时间。

    [dateFormatter release];

    

    NSLog(@"now Time = %@",[selfgetNowDateFromatAnDate:localDate]);


结果:

2013-08-03 12:57:33.391 xxxx[2547:c07] now Time = 2013-08-03 12:56:52 +0000


 以上注意一点,在转出来后带的时间是原参数anydate的时区,因此切不可再用NSDateFormatter 转换。否则会多增加一个时区的时间值。应该使用如下来提取字符串


    NSString *str = [NSStringstringWithFormat:@"%@",[selfgetNowDateFromatAnDate:localDate]];

    NSLog(@"str = %@",str);


注NSDate对象存放的日期始终是UTC的标准时间,可以根据这个时间进行其它时间的转换。因此上面算出来的时间中时区为 +0000,如果此时再转为字符串




几个转换函数

//NSString 2 NSDate

- (NSDate *)stringToDate:(NSString *)strdate

{

    NSDateFormatter *dateFormatter = [[NSDateFormatteralloc]init];

    [dateFormatter setDateFormat:@"yyyy-MM-dd HH:mm:ss"];

    NSDate *retdate = [dateFormatter dateFromString:strdate];

    [dateFormatter release];

    return retdate;

}


//NSDate 2 NSString

- (NSString *)dateToString:(NSDate *)date

{

    NSDateFormatter *dateFormatter = [[NSDateFormatteralloc]init];

    [dateFormatter setDateFormat:@"yyyy-MM-dd HH:mm:ss"];

    NSString *strDate = [dateFormatter stringFromDate:date];

    [dateFormatter release];

    return strDate;

}

  1. //将本地日期字符串转为UTC日期字符串  
  2. //本地日期格式:2013-08-03 12:53:51  
  3. //可自行指定输入输出格式  
  4. -(NSString *)getUTCFormateLocalDate:(NSString *)localDate  
  5. {  
  6.     NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];  
  7.     //输入格式  
  8.     [dateFormatter setDateFormat:@"yyyy-MM-dd HH:mm:ss"];  
  9.       
  10.     NSDate *dateFormatted = [dateFormatter dateFromString:localDate];  
  11.     NSTimeZone *timeZone = [NSTimeZone timeZoneWithName:@"UTC"];  
  12.     [dateFormatter setTimeZone:timeZone];  
  13.     //输出格式  
  14.     [dateFormatter setDateFormat:@"yyyy-MM-dd'T'HH:mm:ssZ"];  
  15.     NSString *dateString = [dateFormatter stringFromDate:dateFormatted];  
  16.     [dateFormatter release];  
  17.     return dateString;  
  18. }  
  19.   
  20. //将UTC日期字符串转为本地时间字符串  
  21. //输入的UTC日期格式2013-08-03T04:53:51+0000  
  22. -(NSString *)getLocalDateFormateUTCDate:(NSString *)utcDate  
  23. {  
  24.     NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];  
  25.     //输入格式  
  26.     [dateFormatter setDateFormat:@"yyyy-MM-dd'T'HH:mm:ssZ"];  
  27.     NSTimeZone *localTimeZone = [NSTimeZone localTimeZone];  
  28.     [dateFormatter setTimeZone:localTimeZone];  
  29.       
  30.     NSDate *dateFormatted = [dateFormatter dateFromString:utcDate];  
  31.     //输出格式  
  32.     [dateFormatter setDateFormat:@"yyyy-MM-dd HH:mm:ss"];  
  33.     NSString *dateString = [dateFormatter stringFromDate:dateFormatted];  
  34.     [dateFormatter release];  
  35.     return dateString;  
  36. }  



- (NSString *)getUTCFormatDate:(NSDate *)localDate

{

    NSDateFormatter *dateFormatter = [[NSDateFormatteralloc]init];

    NSTimeZone *timeZone = [NSTimeZonetimeZoneWithName:@"UTC"];

    [dateFormatter setTimeZone:timeZone];

    [dateFormatter setDateFormat:@"yyyy-MM-dd HH:mm:ss Z"];

    NSString *dateString = [dateFormatter stringFromDate:localDate];

    [dateFormatter release];

    return dateString;

}


- (NSDate *)getLocalFromUTC:(NSString *)utc

{

    NSDateFormatter *dateFormatter = [[NSDateFormatteralloc]init];

    NSTimeZone *timeZone = [NSTimeZonelocalTimeZone];

    [dateFormatter setTimeZone:timeZone];

    [dateFormatter setDateFormat:@"yyyy-MM-dd HH:mm:ss Z"];

    NSDate *ldate = [dateFormatter dateFromString:utc];

    [dateFormatter release];

    return ldate;

}


//以上注意字符串时的输入参数的格式,别外不要用%@来查看NSDate的值,因为本身存的就是UTC ,小心被误倒。将期转换出字符串来查看一下。


UTC2Time2.0 for mac utc秒数时间与日期时间转换工具 自己写的小工具,提供utc秒数时间与日期时间之间的互相转换。 此版本为2.0 for MAC OS X 版本,也是该程序在MAC平台的首个版本。 2.0版本主要改进如下: 1.增加日历功能,方便日期选择 2.输出结果支持右键菜单复制、粘贴 立即下载

相关推荐

Buck电路中自举电容串联小电阻的作用

在Buck电路中,自举电容(Cboot)驱动高边MOSFET时,因寄生电感和电容会形成LC谐振回路,导致SW节点高频振铃,引发EMI问题。串联小电阻(Rboot)可引入阻尼效应,抑制振铃、改善波形和EMI性能,但会略微增加开关损耗。设计时建议预留可调电阻位(2Ω~20Ω),根据实测结果平衡效率与系统稳定性,提升电源可靠性。这一措施是优化开关电源EMC的常见实践。

硬核科技 625

将其他时区转换当前系统时区

//将其他时区转换当前系统时区 - (NSDate *)getNowDateFromatAnDate:(NSDate *)anyDate {     //设置源日期时区     NSTimeZone* sourceTimeZone = [NSTimeZone timeZoneWithAbbreviation:@"UTC"];//或GMT     //设置转换后的目标日期时区    

如鱼得水的专栏 1264

PID调参避坑指南:为什么你的电机总是震荡?从比例带积分到微分实战解析

本文针对电机控制中常见的震荡问题,提供了一份PID调参实战指南。文章深入解析了比例(P)、积分(I)、微分(D)三个参数对系统稳定性的影响,揭示了比例增益过大是导致震荡的关键原因之一,并给出了从纯比例调试到引入积分、微分的系统化调参流程与避坑要点,帮助工程师快速实现电机平稳、精准的控制。

weixin_28223453的博客 456

IOS 世界标准时间UTC /GMT 转为当前系统时区对应的时间

- (NSDate *)getNowDateFromatAnDate:(NSDate *)anyDate { //设置源日期时区 NSTimeZone* sourceTimeZone = [NSTimeZone timeZoneWithAbbreviation:@"UTC"];//或GMT //设置转换后的目标日期时区 NSTimeZone* destination

fengsh998的专栏 8万+

Zabbix7.4监控系统在Rocky Linux10.0上的完整部署流程(含MariaDB配置)

本文详细介绍了在Rocky Linux 10.0操作系统上部署企业级监控系统Zabbix 7.4的完整流程,并重点阐述了与MariaDB数据库的深度集成与性能优化配置。内容涵盖从系统环境准备、数据库安装与安全加固、Zabbix核心组件部署,到服务配置、Web界面初始化以及生产环境高级调优的全方位实战指南,旨在帮助用户构建稳定高效的监控平台。

weixin_29200741的博客 328

51单片机AHT20-21源代码

传感器输出经过 标定的数字信号,标准 I 2 C 格式。AHT20 配有一个全新设计的 ASIC专用芯片、一 个经过改进的MEMS半导体电容式湿度传感元件和一个标准的片上温度传感元件,其 性能已经大大提升甚至超出了前一代传感器的可靠性水平,新一代温湿度传感器, 经过改进使其在恶劣环境下的性能更稳定。但是现在网上的大多数原码都是针对stm32等的这种多位单片机,而我们都知道51单片机是8位单片机,无法对浮点数进行运算,对32位的整数计算有时候也不是很准确,所以我对网上stm32的例程进行了修改。...

wd0710的博客 4546

ios 时间戳 当前时间 相互转化

http://blog.youkuaiyun.com/sqc3375177/article/details/8704952 一,当前时间转化为时间戳,二,获取的当前时间和系统的时间相差8个小时 一,转化的方法为     NSString *timeSp = [NSString stringWithFormat:@"%d", (long)[localeDate time

400

STC8H硬件IIC从机模式实战:手把手教你驱动OLED屏幕(附完整代码)

本文详细介绍了如何使用STC8H单片机的硬件IIC从机模式驱动SSD1306 OLED屏幕,包括硬件连接、寄存器配置、中断处理和实际应用中的优化技巧。通过完整的代码示例和实战经验分享,帮助开发者快速掌握I2C通信协议和OLED屏幕驱动技术,提升嵌入式开发效率。

weixin_33747129的博客 336

utc时间 单位换算_iOS世界标准时间UTC /GMT 转为当前系统时区对应的时间

释放双眼,带上耳机,听听看~!由于维护老版本的项目中遇到时区错乱的问题,需要更新解决这个问题就需要把系统当地的时区给转化为世界标准时间来处理。注意改的时候可以让服务器把服务器和数据库的时间也给改成世界标准时间。我的思路如下:-上传时间先获取当前的系统时间(由于上传的时候都会用到pickerView,所以我直接写死一个时间):NSString *str1 = "2016-12-12 12:30:00...

weixin_42355400的博客 563

退火朗之万动力学采样

退火朗之万动力学采样(Simulated Annealing Langevin Dynamics Sampling)结合了退火技术和朗之万动力学,是一种用于分子模拟和统计物理中的计算方法。这种方法可以帮助系统从局部最小值中逃逸,以找到全局最小值或进行有效的配置空间探索。

weixin_39699362的博客 1947

UDS自动化测试-Service 0x27(CAPL调用dll实现key计算)

相信读者基于Diagnostic/ISO TP Confighration中cdd、dll文件的测试并不陌生,本文基于其的基础上,介绍在capl中调用内置的函数diagGenerateKeyFromSeed实现27服务解锁,从而进行诊断自动化测试。本文基于4个byte的Seed、16个byte的Key的安全访问,实现27服务的自动化测试。需要加载项目使用的cdd文件,如果没有的情况下可以使用canoe例程中默认的cdd文件。

诊断协议那些事儿's blog 2052

iOS NSDate和UTC时区时间的转化

iOS开发过程中,服务端为了兼容国际化,返回给客户端的时间是带有时区的字符串格式(例如:“2020-02-25T06:02:44.000+0000”),我们需要把它转化成本地时区的时间(例如:2020-02-25 14:02:44)。 /** 将UTC日期字符串转为本地时间字符串 eg: 2020-02-21T07:24:41.000+0000 -> 2020-02-21 15:24:4...

qq_32940999的博客 3063

AI 辅助编程全景:演进、提效场景与未来趋势

本文系统梳理了AI辅助编程的发展历程与应用场景。演进路径分为三代:从代码补全工具(2023)、对话式助手(2024)到自主编程代理(2025)。在软件全生命周期中,AI可显著提升各环节效率:需求分析阶段节省30-60%文档编写时间;设计阶段缩短40-60%技术调研周期;编码阶段通过智能补全提升55%任务速度;测试阶段减少30-60%测试编写时间。数据显示,2025年84%开发者使用AI工具,41%代码由AI生成,平均每周节省3.6小时。AI正推动开发者角色从编写者转变为审核者,但复杂业务逻辑和架构设计仍需人

甘蓝的专栏 472

setcookie过期时间设了却无效?你必须知道的GMT时区与服务器时间同步问题

解决PHP setcookie过期时间无效问题,关键在于GMT时区与服务器时间同步。本文详解正确设置过期时间的方法,避免因时区差异导致Cookie提前失效,适用于登录保持、用户追踪等场景,值得收藏。

SimTrans的博客 992

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

ssm框架搭建

这个是一个在idea上成功跑起来的ssm框架项目,保存在这里方便以后使用直接下载

[绍棠] 世界标准时间UTC /GMT 转为当前系统时区对应的时间

//获取当前时间 -(NSString*)getCurrentTime {     NSDateFormatter*formatter = [[NSDateFormatter alloc] init];     [formatter setDateFormat:@"yyyy-MM-dd HH:mm:ss"];     NSString*dateTime = [format

绍棠的博客 1514

霍尼韦尔SoftMaster使用说明

霍尼韦尔SoftMaster使用说明

[转帖]UTC时间、GMT时间、本地时间、Unix时间戳

UTC时间、GMT时间、本地时间、Unix时间戳 https://www.cnblogs.com/xwdreamer/p/8761825.html 引用: https://blog.youkuaiyun.com/u012102306/article/details/51538574 https://blog.youkuaiyun.com/foxir/article/details/...

weixin_30904593的博客 239

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

HarmonyOS 应用开发:深入系统时间与时区设置

时区在HarmonyOS中被抽象为TimeZone对象,它封装了地理区域的偏移量、夏令时规则、以及本地化名称等信息。HarmonyOS遵循IANA时区数据库(如或),而非简单的固定偏移(如GMT+8)。这种设计允许系统自动处理历史时区变更和未来规则调整,例如某地区废除夏令时的情况。开发者需注意,时区信息可能随系统更新而变化,因此应用应避免硬编码时区规则,而是动态查询系统服务。

不懂先生的博客 1459

iOS 系统时间 转换为当前时区时间

转自:http://www.cnblogs.com/deneyZhao/p/5473411.html - (NSDate *)getNowDateFromatAnDate:(NSDate *)anyDate {     //设置源日期时区     NSTimeZone* sourceTimeZone = [NSTimeZone timeZoneWithAbb

jacker_2014的博客 705

ios 获取当前准确时间

获取当前时间:(之前做倒计时时发现一些bug,这里对获取当前时间进行总结) 启动app时发送服务器时间请求获取当前最新时间,存储到内存; 退到后台或锁屏手机后再进入前台情况下最新时间: 这里处理的方案是将(启动app时获取到的服务器时间 - 当时获取服务器时间时处系统运行时长 + 现在的系统运行时长) 这里只要能得到系统运行时长即可: 了解下ios关于时间的处理: 1.NSDate对象...

HX_lei的博客 3907

iOS 时区问题总结 NSTimeZone

基本概念 GMT 0:00 格林威治标准时间; UTC +00:00 校准的全球时间; CCD +08:00 中国标准时间 [来自百度百科] 夏时制,英文"DaylightSavingTime"。夏季时将时区内的时间提前(一般为1小时),以节省资源,提高效率。使用夏时制期间,当前时区相对于GMT的时间偏移量会发生变化。在某些应用中可能需要考虑。 任何时区都以GMT为基...

467

时区处理与东八区的程序员们

前言在和前端同学联调的过程中,我们通常会遇到与时间有关的场景:为什么传过来的时间落库的时候总是1970年?为什么相同的时间戳在不同的区域里转换成的时间字符串不一样?为什么不同的转换方法换成的结果一会是GMT,一会是UTC?时间,这个在开发中不起眼的一环,却又往往会让很多开发者在遇到时犹豫不决。在本文开始之前,先抛出一个问题:在日常的业务场景中,什么场景使用北京时间?什么场景使用本地时间?GMT与U...

1920

iOS 时区获取问题

时区缩写 UTC, CST, GMT, CEST 以及转换 UTC是协调世界时(Universal Time Coordinated)英文缩写,是由国际无线电咨询委员会规定和推荐,并由国际时间局(BIH)负责保持的以秒为基础的时间标度。UTC相当于本初子午线(即经度0度)上的平均太阳时,过去曾用格林威治平均时(GMT)来表示.北京时间比UTC时间早8小时,以1999年1...

dlo8147的博客 387
上一篇: 最近项目中需要在指定的字符串中取出数字字符,找了好多但都是词不达意,索性自己写了个方法,与大家共享!
下一篇: ios日期格式转换
光速之年
博客等级 码龄12年 31粉丝 97原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值