如何将日期格式化为IST?

史密斯

我必须格式化日期如下:

2014年7月19日10:27:16 IS

我怎样才能做到这一点?我应该将“ IST”作为字符串对象发送吗?

我试过了 -

NSDate* sourceDate = [NSDate date];  
NSLog(@"Date is : %@", sourceDate);  

NSTimeZone *currentTimeZone = [NSTimeZone localTimeZone];  
NSLog(@"TimeZone is : %@", currentTimeZone);  

NSDateFormatter * dateFormatter = [[NSDateFormatter alloc]init]  ;
dateFormatter setDateFormat:@"dd-MMM-yyyy HH:mm:ss Z"];  
[dateFormatter setTimeZone:[NSTimeZone systemTimeZone]];  

NSLog(@"%@",[dateFormatter stringFromDate:sourceDate]);  

我已经根据Apple的官方文档Unicode日期格式器标准尝试了几种时区格式器方案

我这样设置时区:

NSTimeZone *_timezone = [NSTimeZone timeZoneWithName:@"IST"];

可以为我提供适当的时区和+0530偏移量,因此该实例用于my的实例NSDateFormatter

NSDateFormatter *_dateFormatter = [[NSDateFormatter alloc]init];
[_dateFormatter setTimeZone:_timezone];

这是有关我使用不同的format-scpecifiers的列表:

  • z = GMT+0530 IST
  • zz = GMT+0530 IST
  • zzz = GMT+0530 IST
  • zzzz = India Standard Time IST
  • zzzzz = India Standard Time IST

似乎没有一个标准的格式说明符只能提供实际的"IST"字符串形式,匹配项是"India Standard Time IST"with格式说明符,zzzz并且zzzzz–但您可以看到"GMT+0530 IST"其余格式符仍然包含它。

注:其它格式修饰符如ZvVxX似乎没有任何有用的。


我已经阅读了有关格式说明符的更多信息,文档说有关使用z

所述短特定的非位置格式(例如PDT)。在不可用的地方,请退回简短的本地化GMT格式

对我意味着什么,实际的短特定非定位格式印度标准时间通过不可NSDateFormatter直接-或因某种原因被指定为"GMT+0530 IST"不如短"IST"

另一方面,我不确定服务器端是否接受长整型非位置格式(aka "India Standard Time IST"),或者时区必须"IST"由字符串标记

恐怕如果只希望使用最新格式,则您将需要手动和大胆地添加它,例如:

[_dateFormatter setDateFormat:@"dd-MMM-yyyy HH:mm:ss"];
NSString *_date = [[_dateFormatter stringFromDate:[NSDate date]] stringByAppendingString:@" IST"];

注意:我也发现月份名称也应该大写,我不确定这是另一个期望还是月份名称的通用大写形式(例如“ Jul”,“ Sep”等...)对您的服务器端来说已经足够好了–在我当前的回答中,我没有大写它们。


†我没有找到任何可以描述实际短格式的标准,因此基于unicode标准,我认为"IST"应当是的短格式,而不是"GMT+0530 IST"–但这仅基于我个人的推测。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何将日期格式化为特定语言?

来自分类Dev

如何将日期范围格式化为“MMM,d”?

来自分类Dev

如何将“日期+小时”字符串格式化为日期时间格式

来自分类Dev

如何将日期时间列格式化为相同格式

来自分类Dev

如何将日期格式化为以下格式day.month.year?

来自分类Dev

如何将我的日期格式化为默认格式

来自分类Dev

如何将字符串格式化为日期时间?

来自分类Dev

如何将Vertica日期列格式化为仅月份?

来自分类Dev

如何将JS日期格式化为与C#兼容的DateTime?

来自分类Dev

如何将HighAxis中每个值的xAxis标签格式化为日期?

来自分类Dev

如何将x轴上的日期格式化为R中的月份和年份

来自分类Dev

如何将日期字符串格式化为全文DD MM YYYY?

来自分类Dev

如何将MongoDB的jQuery Fullcalendar日期格式化为ISODate?

来自分类Dev

如何将像`2018911`这样的字符串格式化为日期?

来自分类Dev

如何将日期时间值格式化为数据表 vb.net

来自分类Dev

将日期格式化为可读格式

来自分类Dev

如何将20140101重新格式化为有效的日期格式,例如2014-01-01

来自分类Dev

如何将bash数组格式化为JSON数组

来自分类Dev

如何将公式的结果格式化为S号

来自分类Dev

如何将时间格式化为UTC时区?

来自分类Dev

如何将ClosedXML中的货币格式化为数字

来自分类Dev

如何将参数格式化为函数

来自分类Dev

如何将数组的对象格式化为新对象

来自分类Dev

如何将Powershell CanonicalName格式化为单独的列?

来自分类Dev

如何将JSON对象格式化为Pandas Dataframe?

来自分类Dev

如何将公式的结果格式化为S号

来自分类Dev

如何将HTML文档格式化为特定的输出?

来自分类Dev

如何将数组格式化为键:值?

来自分类Dev

如何将介质格式化为ISO

Related 相关文章

  1. 1

    如何将日期格式化为特定语言?

  2. 2

    如何将日期范围格式化为“MMM,d”?

  3. 3

    如何将“日期+小时”字符串格式化为日期时间格式

  4. 4

    如何将日期时间列格式化为相同格式

  5. 5

    如何将日期格式化为以下格式day.month.year?

  6. 6

    如何将我的日期格式化为默认格式

  7. 7

    如何将字符串格式化为日期时间?

  8. 8

    如何将Vertica日期列格式化为仅月份?

  9. 9

    如何将JS日期格式化为与C#兼容的DateTime?

  10. 10

    如何将HighAxis中每个值的xAxis标签格式化为日期?

  11. 11

    如何将x轴上的日期格式化为R中的月份和年份

  12. 12

    如何将日期字符串格式化为全文DD MM YYYY?

  13. 13

    如何将MongoDB的jQuery Fullcalendar日期格式化为ISODate?

  14. 14

    如何将像`2018911`这样的字符串格式化为日期?

  15. 15

    如何将日期时间值格式化为数据表 vb.net

  16. 16

    将日期格式化为可读格式

  17. 17

    如何将20140101重新格式化为有效的日期格式,例如2014-01-01

  18. 18

    如何将bash数组格式化为JSON数组

  19. 19

    如何将公式的结果格式化为S号

  20. 20

    如何将时间格式化为UTC时区?

  21. 21

    如何将ClosedXML中的货币格式化为数字

  22. 22

    如何将参数格式化为函数

  23. 23

    如何将数组的对象格式化为新对象

  24. 24

    如何将Powershell CanonicalName格式化为单独的列?

  25. 25

    如何将JSON对象格式化为Pandas Dataframe?

  26. 26

    如何将公式的结果格式化为S号

  27. 27

    如何将HTML文档格式化为特定的输出?

  28. 28

    如何将数组格式化为键:值?

  29. 29

    如何将介质格式化为ISO

热门标签

归档