• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号
您的位置:首页 > 程序设计 >ios > IOS中时间戳转换stringFromDate返回值是null

IOS中时间戳转换stringFromDate返回值是null

作者:佚名 字体:[增加 减小] 来源:互联网 时间:2017-06-05

佚名通过本文主要向大家介绍了ios null,findviewbyid返回null,返回null,time null 返回值,mybatis 返回null等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com
问题: IOS中时间戳转换 stringFromDate返回值是null
描述:

NSDateFormatter *dateFormat = [[NSDateFormatter alloc] init];
[dateFormat setDateFormat:formatString];
NSLog(@"date------:%@",date);
NSString *dateString = [dateFormat stringFromDate:date];
NSLog(@"time: %@", dateString);

date打印出来是正常的 但是无法转换成对应的格式。
打印出来是下面的结果
2015-02-05 14:22:22.057 Puyun[2416:144800] date------:1421311500000
2015-02-05 14:22:22.057 Puyun[2416:144800] time: (null)

很奇怪。

我拷贝了一块代码到程序中
NSDateFormatter* formatter = [[NSDateFormatter alloc] init];
[formatter setDateStyle:NSDateFormatterMediumStyle];
[formatter setTimeStyle:NSDateFormatterShortStyle];
[formatter setDateFormat:@"yyyyMMddHHMMss"];
NSDate *datea = [formatter dateFromString:@"1283376197"];
NSLog(@"date1:%@",datea);
居然打印出
2015-02-05 15:47:48.619 Puyun[2952:183558] date1:(null)

是不是漏了什么东西 请帮忙啊


解决方案1:

第一个问题

要看你的 date 是什么格式的。[dateFormat stringFromDate:date];接受的是 NSDate 类型,可你的 date 肯定不是。如果是的话,打印出来就不会是1421311500000这样了。

看起来是个 long 类型的样子,所以第一步要先把它转成 NSDate。你可以参考上面 @avboy 的答案。

第二个问题

因为你定的格式是yyyyMMddHHMMss,而给的 String 又不符合这个格式,所以结果是 nil 了呀。
我把这一句改成:

NSDate *datea = [formatter dateFromString:@"20150206190300"];

就得出结果了:

2015-02-05 19:03:33.574 iOSTest[4411:76190] date1:2015-03-06 11:00:00 +0000

解决方案2:

//转时间戳
NSDate *datea = [NSDate dateWithTimeIntervalSince1970:[@"1283376197" doubleValue]];

//转时间字符串
NSDateFormatter* formatter = [[NSDateFormatter alloc] init];
[formatter setDateStyle:NSDateFormatterMediumStyle];
[formatter setTimeStyle:NSDateFormatterShortStyle];
[formatter setDateFormat:@"yyyy-MM-dd HH:MM:ss"];
NSDate *datea = [NSDate dateWithTimeIntervalSince1970:[@"1283376197" doubleValue]];
NSString *dateString = [formatter stringFromDate:datea];
NSLog(@"date1:%@",dateString);

解决方案3:

没有设置格式。可以使用 setDateFormat: 或者 setDateStyle: 方法设置,就不会返回 nil 了

[dateFormat setDateStyle:NSDateFormatterFullStyle];
//或者
[dateFormat setDateFormat:@"yyyy-mm-dd"];
NSString *dateString = [dateFormat stringFromDate:date];
NSLog(@"time: %@", dateString);

Unix 时间戳转 NSDate 可以这么写

long timesp = 1283376197; //Unix 时间戳 
NSDate *date = [NSDate dateWithTimeIntervalSince1970:timesp];


分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • IOS中时间戳转换stringFromDate返回值是null

相关文章

  • 2017-06-05 androidsdk下载IOS旧版SDK在哪下载?
  • 2017-06-05 IOS微信第三方登录多个APP添加微信\QQ第三方登录的问题
  • 2017-06-05 ios被植入病毒iOS打包问题,求大神指教,被这问题卡住了!
  • 2017-06-05 (swift)UIwebView顶部进度条怎么实现的?
  • 2017-06-05 sidebar为什么要将侧滑栏设成rootviewcontroller
  • 2017-06-05 uitableview如何将每行添加两个cell,数据是后台传输的
  • 2017-06-05 有做过填充算法的大神?求救啊!
  • 2017-06-05 产品需求写一个tableView每一个cell的倒计时功能,求设计思路
  • 2017-06-05 ScrollView掛载,为什么会很久才会显示画面
  • 2017-06-05 WKWebView问题求救

文章分类

  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号

最近更新的内容

    • 我用jq实现了web版ios桌面,遇到问题来求助,请精通js基于jquery的朋友来指教如何把正在按住的这个对象给换个父层
    • IOS:tableView分区头重用问题
    • swift四舍六入五成双随机
    • iOSSearchBar本地历史记录Cell的删除问题。。。
    • 支付验证签名支付失败?——微信支付的app支付
    • 数学计算器在线计算UItextview计算高度
    • 如何选择创业项目项目结构如何写
    • swift2我该如果把keyboard加在view上面,而不是让它自动跳出来
    • iosXIB和代码区别。
    • 按钮可以点击,但是进不去点击方法

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有