一. NSDateFormatter解释

1. 日期(NSDate)是NSString类的格式(stringWithFormat),也可以改变输出,如果需要输出年代信息等则需要进行转换,等等。

2. NSDate存储的是世界标准时(UTC),输出时需要根据时区转换为本地时间。

3. NSDateFormatter可以比较方便的进行格式转换。

二. 时间格式定义

1. G        --> 公元时代

2. yy       --> 年的后两位

3. yyyy     --> 完成的年

4. MM       --> 月份  1-12月

5. MMM      --> 月份英文简写 如Jan

6. MMMM     --> 月份英文全写 如Janualy

7. dd       --> 日  两位数表示 如02

8. d        --> 日  1-2位显示 如 1 或者12

9. EEE      --> 简写星期几 如: Sun

10. EEEE    --> 全写星期几 Sunday

11. aa      --> 上午下午  AM/PM

12. H       --> 小时 24小时制 0-23

13. K       --> 小时 12小时制 1-12

14. m       --> 分钟  1-2位 如 2 或者22

15. mm      --> 分钟  2位    如02

16. s       --> 秒   1-2位

17. ss      --> 秒   2位

18. S       --> 毫秒

三. 封装的修改时间格式的方法 (需要传入NSString类型,并且返回NSString类型)

- (NSString *)formateDateToFull:(NSString *)string

{

/**

1. 获取到初始的时间字符串

2. 设置该时间的格式

3. 将时间字符串转变成为NSDate类型

4. 重新设置自己想要时间格式

5. 将时间转化为时间字符串

*/

//实例化一个NSDateFormatter对象

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

/**

1. 模拟器默认的是英语环境,不加这句话也可以转换,

2. 在真机上不加这句话就会获取不到下面的NSDate对象.因为真机一般是简体中文.

3. 这句话的意思就死设置时间支持的语言为简体中文

*/

dateFormatter.locale = [NSLocale localeWithLocaleIdentifier:@"en"];

// 设定时间格式,这个格式是后台给的时间,需要根据具体的时间格式自己定义.

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

// 将时间字符串根据上面设置的时间格式转换成NSDate类型

NSDate *date = [dateFormatter dateFromString:string];

// 重新设置自己想要的时间格式

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

// 将时间NSDate转化成为需要的NSString类型

NSString *currentDateStr = [dateFormatter stringFromDate:date];

return currentDateStr;

}

iOS- NSDateFormatter (自定义时间格式)的更多相关文章

  1. linux 获取时间后--自定义时间格式

    自定义时间格式 =================================-===================================== #include <stdio.h ...

  2. Mui自定义时间格式:

    Mui自定义时间格式: (function($) { $.init(); $(document).on('tap','.btn',function(){ var obj = getFormJson($ ...

  3. Gorm 预加载及输出处理(三)- 自定义时间格式

    前言 Gorm 中 time.Time 类型的字段在 JSON 序列化后呈现的格式为 "2020-03-11T18:26:13+08:00",在 Go 标准库文档 - time 的 ...

  4. Python-时间戳、元组时间的格式、自定义时间格式之间的转换

    一.时间戳.元组时间的格式.自定义时间格式之间的转换 1.下面是三者之间的转换关系: 2.代码如下: import time import datetime print(time.time()) #获 ...

  5. iOS开发之时间格式的转化

    在开发iOS程序时,有时候需要将时间格式调整成自己希望的格式,这个时候我们可以用NSDateFormatter类来处理. 例如:如何将格式为“12-May-14 05.08.02.000000 PM” ...

  6. 使用POI读取xlsx文件,包含对excel中自定义时间格式的处理

    package poi; import java.io.File; import java.io.FileInputStream; import java.io.FileNotFoundExcepti ...

  7. mvc页面中,显示自定义时间格式

    1.在model中,遇到datetime格式的字段,用string来表示 model中 /// <summary> /// 开始时间 /// </summary> [Displ ...

  8. jstl自定义时间格式

    <fmt:formatDate value='${time}' pattern='yyyy-MM-dd HH:mm:ss'/> <s:iterator>下的<s:prop ...

  9. NSDateFormatter中时间格式串的含义

    a: AM/PM (上午/下午) A: 0~86399999 (一天的第A微秒) c/cc: 1~7 (一周的第一天, 周天为1) ccc: Sun/Mon/Tue/Wed/Thu/Fri/Sat ( ...

随机推荐

  1. linux C++ 获取文件绝对路径

    提供ftp服务时需要获取文件绝对路径,这里记录一下. #include <stdlib.h> #include <stdio.h> #include <limits.h& ...

  2. checkbox的三种状态处理

    checkbox只有两种值:选中(checked)或未选中(unchecked).它可以有任何值,但是表单提交时checkbox的值只能是checked或unchecked.它的默认值是uncheck ...

  3. 网页JS获取当前地理位置(省市区)

    眼看2014又要过去了,翻翻今年的文章好像没有写几篇,忙真的或许已经不能成为借口了,在忙时间还是有的,就像海绵里的水挤挤总会有滴.真真的原因是没有学习过什么新的技术,工作过程中遇到的问题也不是非常难并 ...

  4. ECSHOP会员登录后直接进用户中心

    ECSHOP系统在会员登录成功后,不是直接进入用户中心,而是跳转回了上一个页面或者是跳转到了首页. 注意:这里说的是,用户没有主动点击前往哪个页面,让系统自动跳转. 那如何让会员登录成功后自动进入“用 ...

  5. VirtualBox的四种网络连接方式

    VirtualBox中有4中网络连接方式:a. NAT                          网络地址转换模式(Network Address Translation)b. Bridged ...

  6. Mesos源码分析

    Mesos源码分析(1): Mesos的启动过程总论 Mesos源码分析(2): Mesos Master的启动之一 Mesos源码分析(3): Mesos Master的启动之二 Mesos源码分析 ...

  7. No Assistant Results

    由于修改一些文件名字等会导致这个不工作. "Organizer" / "Projects" / 选择你的项目.  "Delete" .

  8. Debug Assertion Failed! Expression: _pFirstBlock == pHead

    点击Abort之后,查看调用栈,发现异常在函数return时被时产生,进一步看是vector的析构函数被调用时产生,以前没开发过C++项目,没什么经验,这个错误让我很困惑,第一,我电脑上并没有f盘:第 ...

  9. mysql相关问题

    MySQL导入.sql文件及常用命令,参考:http://blog.csdn.net/muziduoxi/article/details/6091202 修改mysql默认字符集的方法,参考:http ...

  10. css3实现进度条的模拟

    两种进度条动画的实现: 1.css3,但IE9-不支持. 2.js动画,兼容性好,但没有css3实现的顺畅 Demo: <html>    <head>        < ...