今天在做一个有关时间的一些开发的时候,遇见了一写问题,反正来说既是很简单的问题,但毕竟用了我一些时间去调错误,遂记录之。
本来是想用 NSDateFormat 来转换一下服务器返回的时间,然后在客户端显示一下。但是最后发现竟然显示不出来,我以为是控件没有显示出来,但是最后我查找发现竟然是没有设置frame。
此时就想肯定是frame这边有为题,遂查了网上一些文章关于NSDateFormat的使用之类,发现一个说的很好很全的,再次感谢并分享下:
http://www.cnblogs.com/Cristen/p/3599922.html
为此,我看到之后更加发现自己的代码是没有问题的,但是实际上就是出不来,很蛋疼。
这样的情况下我只好从新写了一个小Demo专门看看这个能不能打印出来。
发现确实能够打出来,所以我就想肯定是 DateString出了问题,因为我打了断点之后,这个里面的createDate 还是为nil。
但是无奈之中,我发现了 一个小的问题。
1.就是服务器返回的数据是全英文的,
2.我自己单独写的Demo中打印出来的DateString为中文的,
结合上面两点小的发现,我似乎也找到了问题的所在。
随后我把模拟器的语言转换为了English,重新调试,发现终于成功了。
总结:
这次的实际问题就是:模拟器的语言设置为中文。但是服务器返回的时间是英文。这就导致了 NSDateformat 的 - dateFromString:方法出现问题。
解决方法:根据问题。转换模拟器语言即可。
PS:
本来写到这里已经该结束了,但是感觉自己的文章质量真的很差。一个简单的问题竟然啰嗦了半天,这对一个急于解决问题的程序员来说是很大的浪费,并且有种为了写文章而写文章的样子。对此,真的很抱歉,我自己以前没有写过,文笔真的很差,日后定会逐步加强,让自己的文章变得有内容,有好的质量,谢谢你看到了这里:)
感谢:MJ 我是看着他的代码来写的。
最后奉上我写这个项目的开源代码。有什么问题或者建议希望看到的朋友们能不吝赐教。