项目中服务器传回来的时间是这种格式的 Sep 5, 2016 6:59:05 PM

现在要将这段字符串转换成 2016-09-05 06:59

被坑的地方有2个点

  1. 服务器传回来的英文的Sep,调试的时候格式化用 MMM ,一直返回nil,后面通过反向打印发现返回的是 9月 中文字符 ,我晕,原来手机的格式化跟本机的中英文环境有关,这里需要加一个强制转换成英文时区
    formatter.locale = [[NSLocale alloc] initWithLocaleIdentifier:@"en_US"];
  1. 第二个坑的地方 一直不知道am,pm这种怎么格式化,在网上搜到说是用 tt ,然后怎么调试都没法解析出来当前的时间,最后没有办法了,只有求助谷歌大神,在stackoverflow中看到格式化用 a 就好,修改好能够很好的运行

完整版的解析代码如下:

    NSDateFormatter *formatter = [[NSDateFormatter alloc] init];

    formatter.locale = [[NSLocale alloc] initWithLocaleIdentifier:@"en_US"];
formatter.dateFormat = @"MMM d , yyyy h:mm:ss a"; NSDate *date = [formatter dateFromString:@"Sep 5 , 2016 11:17:08 AM"];
NSLog(@"%@",date); //将NSDate转换成指定格式的字符串
[formatter setDateFormat:@"yyyy-MM-dd hh:mm "]; NSString *dateString = [formatter stringFromDate:date]; NSLog(@"%@",dateString);

一个小小的时间转换花掉了不少时间,主要还是自己学艺不精啊,以后还要多多努力,学到老,活到老!

字符串时间和NSDate相互转换的坑的更多相关文章

  1. 字符串时间与Unix时间戳相互转换

    字符串时间与Unix时间戳相互转换 /** * @Author: wangkun * @Date : 2016/1/21 13:43 * @Description : 字符串时间转换为Unix时间戳 ...

  2. python时间模块time,时间戳,结构化时间,字符串时间,相互转换,datetime

    time.time() 时间戳 time.localtime() time.localtime() 得到的是一个对象,结构化时间对象 struct_time 通过对象.属性,拿到对应的值 time.g ...

  3. js sql C#时间、时间戳相互转换

    js. sql. C#时间.时间戳相互转换 //1.获取当前时间戳_c# ) / //2.时间戳->时间 C# DateTime b11 = GetTime(");//11位时间戳-& ...

  4. Java 中如何计算两个字符串时间之间的时间差?(单位为分钟)

    Java 中如何计算两个字符串时间之间的时间差?(单位为分钟) import java.text.DateFormat; import java.text.ParseException; import ...

  5. 字符串时间转Date格式

    /** * 字符串时间格式转 Date 格式 * @param strDate * @return */ public static Date getDateTimeByStringTime(Stri ...

  6. Python中字符串与字节之间相互转换

    Python中字符串与字节之间相互转换 ​ a = b"Hello, world!" # bytes object b = "Hello, world!" # ...

  7. python 字符串和时间格式(datetime)相互转换-

    2019-03-17 11:00:00格式转化 import datetime # str转时间格式: dd = '2019-03-17 11:00:00' dd = datetime.datetim ...

  8. [SSIS] 在脚本里面使用数据库连接字符串进行查询等处理, 入坑

    入坑.!!!!! SSIS 中dts包 设置的  ADO.Net连接, 在传入脚本的时候, 我要使用 数据库连接,进行数据的删除操作. 于是我使用了 了如下的 代码 使用的是windows 身份验证, ...

  9. python 时间类型和相互转换

    time有四种类型(time, datetime, string, timestamp) 1. time string string是最简单的表示time的方式 如如下代码生成的即为string &g ...

随机推荐

  1. 老李分享:大数据框架Hadoop和Spark的异同

    poptest是国内唯一一家培养测试开发工程师的培训机构,以学员能胜任自动化测试,性能测试,测试工具开发等工作为目标.如果对课程感兴趣,请大家咨询qq:908821478,咨询电话010-845052 ...

  2. 老李分享知识:性能测试之TPS和吞吐率

    老李分享知识:性能测试之TPS和吞吐率        当增大系统的压力(或添加并发用户数)时,吞吐率和TPS的改变曲线呈大体一致,则系统基本稳定. 若压力增大时,吞吐率的曲线添加到一定程度后出现改变缓 ...

  3. 测试开发Python培训:自动发布新浪微博-技术篇

    测试开发Python培训:自动发布新浪微博-技术篇   在前面我们教大家如何登陆,大家需要先看自动登陆新浪微博(http://www.cnblogs.com/laoli0201/articles/48 ...

  4. E/MediaPlayer: Should have subtitle controller already set

    原文链接:http://stackoverflow.com/questions/20087804/should-have-subtitle-controller-already-set-mediapl ...

  5. POI框架实现创建Excel表、添加数据、读取数据

    public class TestPOI2Excel {//创建2003版本Excel用此方法 @Test public void testWrite03Excel() throws Exceptio ...

  6. hexo工具介绍及使用方法

    Hexo is a fast, simple & powerful blog framework 安装方法:npm install hexo-cli -g; require:node.js g ...

  7. 跟着刚哥梳理java知识点——运算符(五)

    运算符:是一种特殊的符号,用以表示数据的运算.赋值和比较. 1.算数运算符(+.-.*./.%.++.--) a)除: int i = 12; double d1 = i / 5; //2.0 dou ...

  8. 使用纯CSS方案,解决垂直居中

    CSS是HTML元素的剪刀手,它极度的丰富了web页面的修饰.在众多CSS常见的样式需求中,有一奇葩式的存在[垂直居中],因为不管是从逻辑实现方面还是从正常需求量来讲,这都没理由让这个需求在实践过程中 ...

  9. python安装win32api pywin32 后出现 ImportError: DLL load failed

    ImportError: DLL load failed: \xd5\xd2\xb2\xbb\xb5\xbd\xd6\xb8\xb6\xa8\xb5\xc4\xc4\xa3\xbf\xe9\xa1\x ...

  10. 用 parseInt()解决的 小 bug

    在做轮播模块的时候遇到问题是:你在 连续指示小按钮 时候再去 只有 点击 下一张按钮,出现bug: 指示小按钮的 className 当前显示的 calssName 为 undefined ! // ...