日期字符串转换为NSDate
// 纯数字日期
NSString *str1 = @"";
// 日期字符串
NSString *str2 = @"2015/05/12 10:22:01";
// 带时区的日期字符串
NSString *str3 = @"Tue Sep 06 21:37:19 +0800 2015";
// 不带时区的日期字符串
NSString *str4 = @"Tue Sep 05 21:15:27 2015";
// 格林尼治时间
NSString *str5 = @"Wed, 4 Nov 2015 03:25:31 GMT"; // 创建日期格式化对象
NSDateFormatter *format = [[NSDateFormatter alloc] init];
// 设置地区
[format setLocale:[[NSLocale alloc] initWithLocaleIdentifier:@"en_US"]]; // str1
[format setDateFormat:@"yyyyMMddHHmmss"];
NSDate *date1 = [format dateFromString:str1];
NSLog(@"%@", date1); // str2
[format setDateFormat:@"yyyy/MM/dd HH:mm:ss"];
// [format setDateFormat:@"yyy/MM/d h:m:ss"];
// [format setDateFormat:@"yyyy/MM/dd H:m:ss"];
NSDate *date2 = [format dateFromString:str2];
NSLog(@"%@", date2); // str3
// 以下方法在iOS8以后貌似会出现问题,所以另外补充一种使用C语言格式日期方法
[format setDateFormat:@"EEE MMM dd HH:mm:ss zzz yyyy"];
NSDate *date3 = [format dateFromString:str3];
NSLog(@"%@", date3); struct tm sometime;
const char *formatString = "%a %b %d %H:%M:%S %z %Y";
strptime([str3 UTF8String], formatString, &sometime);
date3 = [NSDate dateWithTimeIntervalSince1970:mktime(&sometime)];
NSLog(@"%@", date3); // str4
[format setDateFormat:@"EEE MMM dd HH:mm:ss yyyy"];
NSDate *date4 = [format dateFromString:str4];
NSLog(@"%@", date4); // str5
NSDateFormatter *formatGMT = [[NSDateFormatter alloc] init];
// 设置时间地区
[formatGMT setLocale:[[NSLocale alloc] initWithLocaleIdentifier:@"en_US_POSIX"]];
[formatGMT setDateFormat:@"EEE, dd MMM yyy HH:mm:ss zzz"];
NSDate *date5 = [formatGMT dateFromString:str5];
NSLog(@"%@", date5);
| 定义函数 | 函数说明 | 函数返回值 |
| time_t mktime(struct tm *timeptr); |
将时间结构数据转换成经过的秒数。 mktime() 用来将参数timeptr所指的tm结构数据转换成从公元 1970年1月1日 0时0分0秒 算起至今的UTC时间所经过的秒数。 |
返回经过的秒数 |
| char *strptime(const char *buf, const char *format, struct tm *timeptr); |
strptime是将一个字符串格式化为一个tm结构类型 |
返回没有被格式化的日期字符串 |
| + (id)dateWithTimeIntervalSince1970:(NSTimeInterval)secs; |
返回以1970/01/01 GMT为基准,然后经过了secs秒的时间 |
NSDate 日期对象 |
日期字符串转换为NSDate的更多相关文章
- 将某个日期字符串转换为java.sql.Date的类型
import java.text.ParseException; import java.text.SimpleDateFormat; public class date { /** * @param ...
- C# 把日期字符串转换为日期类型 (MM大写为月、小写为分钟)
string dtStr; DateTime dtTime; 尝试把时间字符串转为DateTime格式 if (DateTime.TryParse(dtStr, out dtTime)) { //st ...
- c#字符串转换为日期,支持任意字符串
文章关键字: c#字符串转换为日期 c#日期转换字符串 字符串转换日期 字符串转换为date 整数转换为字符串 浮点数转换为字符串 字符串转换为时间 将字符串转换为时间 字符转 ...
- 将UTC日期字符串转为本地时间字符串,如@"yyyy-MM-dd'T'HH:mm:ssZ"转换为本地时间
由于苹果商店上线应用24小时内会不稳定,更新提醒可能会陷入死循环,更新提醒需要24小时后弹出,需要把苹果返回的上线时间转换为本地时间故写了下边的方法: //将UTC日期字符串转为本地时间字符串//输入 ...
- mysql str_to_date字符串转换为日期
mysql内置函数,在mysql里面利用str_to_date()把字符串转换为日期. 示例:分隔符一致,年月日要一致 select str_to_date('2008-4-2 15:3:28','% ...
- Java字符串转换为日期和时间比较大小
字符串转换为时间: String data = "2014/7/11"; SimpleDateFormat dfs = new SimpleDateFormat("yyy ...
- js中字符串转换为日期型
简介:字符串转日期型函数 传入一个字符串格式的日期,如何转换为日期型的.以下为转换方案. //字符串转换为日期函数,返回日期型(传入的日期格式2014-04-22) function StringTo ...
- Python 字符串转换为日期
应用程序接受字符串格式的输入,但是你想将它们转换为datetime 对象以便在上面执行非字符串操作. 使用Python 的标准模块datetime 可以很容易的解决这个问题.比如: >>& ...
- mysql内置函数,在mysql里面利用str_to_date()把字符串转换为日期格式
mysql内置函数,在mysql里面利用str_to_date()把字符串转换为日期格式 示例:分隔符一致,年月日要用%号 select str_to_date('2008-4-2 15:3:28', ...
随机推荐
- DIV遮罩层传值
今天费了很大的劲儿才搞定!下面贴出代码和总结: 1.首先是前台代码: <%@ Page Title="" Language="C#" MasterPage ...
- java dubug调试
摘要:调试不仅可以查找到应用程序缺陷所在,还可以解决缺陷.对于Java程序员来说,他们不仅要学会如何在Eclipse里面开发像样的程序,更需要学会如何调试程序.本文介绍了Java程序员必知的10个调试 ...
- php中的$_SERVER从哪来
前几个月学了个tcpdump抓包命令,遇到任何问题总想试试,真是程序员的终级武器呀,它像显微镜一下,把任何的丑陋的bug都显示在你的面前. 为什么有题目中所说的疑问呢?因为我发现在不同的环境下面,我获 ...
- 【三支火把】---一份程序看懂C程序printf()的几种常用用法
闲来继续巩固我的学习之路,今天略微整理了一下,C程序中Printf()的一些常用用法,虽然自己以前好像会,但是不够系统,今天大致整理了一些,先贴上来看看,以后在看到其他,继续补充,希望能帮到一些像我一 ...
- [Javascript] The Array map method
One very common operation in programming is to iterate through an Array's contents, apply a function ...
- Android学习站点推荐
收集了一些比較好的Android学习站点,希望对大家有所帮助: 1.http://developer.android.com/ Android官方站点,可惜被屏蔽了,须要使用FQ软件 2.http:/ ...
- linux 内核 编绎配制选项详解
http://blog.sina.com.cn/s/blog_8308bc810102ux0j.html
- 多媒体应用-swift
照片选择主要是通过UIImagePickerController控制器实例化一个对象,然后通过self.PresentViewController方法推出界面显示.需要实现代理UIImagePicke ...
- Android(java)学习笔记155:如何让你的GridView不再滚动
GridView显示不完整的原因是因为,他的外层也套用了一个滑动的控件,这个解决办法是:重写GridView,是控制GridView不能滚动,就是写一个类继承GridView 代码如下: publ ...
- Android开发的第一天
不管做什么开发都是有开始的,对于开发的话开始要的准备的就是开发工具了 安装开发工具配置开发工具好了不多说了现在我来说怎么样安装和配置安卓的开发工具吧 第一首先就是要下载一个JDK (Java SE ...