草庐IT

dateFormatters

全部标签

java - Joda-Time DateFormatter 在非零时显示毫秒

使用Joda-Time,我想显示一个日期列表,这些日期可能有也可能没有毫秒。如果某个条目有毫秒,那么它应该显示为yyyyMMddHH:mm:ss.SSS。如果它没有毫秒,我需要它显示为yyyyMMddHH:mm:ss。我想一般的问题是:有没有办法描述一个可选的格式字符串参数?(我想避免重构我使用格式化程序的所有地方,因为这是一个大型代码库。) 最佳答案 据我所知,没有可选的模式。但是,我认为您可能对问题想得太多了。//Samplevariablename-you'dprobablynamethisbetter.publicstati

java - 是否可以创建一个将两位数年份转换为四位数年份的 DateFormatter?

在我的Java应用程序中,我使用DateFormat实例来解析日期输入。DateFormatfmt;fmt=DateFormat.getDateInstance(DateFormat.DEFAULT)//dd.MM.yyyyforde_DE问题是用户坚持以31.12.11的形式输入日期。不幸的是,这被解析为31.12.11。(ISO格式的0011-12-31)相反,我希望解析的日期成为31.12.2011(ISO中的2011-12-31格式)。我可以修改日期格式以某种方式解析输入吗? 最佳答案 您将必须使用dd.MM.yy格式解析并

ios - 来自字符串时区的日期不符合使用 DateFormatter

代码:letisoDate="1981-02-20T10:44:00+0800"letdateFormatter=DateFormatter()dateFormatter.timeZone=TimeZone.currentdateFormatter.dateFormat="yyyy-MM-dd'T'HH:mm:ssZ"varlocalTimeZoneAbbreviation:String{returnTimeZone.current.abbreviation()??""}letdate=dateFormatter.date(from:isoDate)!dateFormatter.str

objective-c - Dateformatter 更改日期的年份

我尝试使用日期格式器显示日期,但这个日期格式器更改了日期的年份。这是方法:setLabelWithDate:(NSdate*)date{NSDateFormatter*dateFormatter=[[NSDateFormatteralloc]init];NSTimeZone*gmt=[NSTimeZonetimeZoneWithAbbreviation:@"GMT"];[dateFormattersetTimeZone:gmt];[dateFormattersetDateFormat:@"ddMMMMYYYY"];NSLog(@"Date:%@",date);NSLog(@"strin

ios - 我用 "EEE MMM dd HH:mm:ss z yyyy"得到了 dateFormatter 的异常

使用以下代码时出现异常:varexpDate:NSDate=NSDate()letdateFormatter=NSDateFormatter()dateFormatter.dateFormat="EEEMMMddHH:mm:sszyyyy"expDate=dateFormatter.dateFromString("SunApr1910:33:18GST2009")我试过用e和E代替EEE,用Z和ZZZ代替z但没用有谁知道问题出在哪里? 最佳答案 “GST”似乎不是受支持的缩写。参见https://gist.github.com/no

ios - DateFormatter 将日期更改 500 年

我正在运行以下代码:ifletmessagedate=curr_comment["timestamp"]as?String{letdateFormatter=NSDateFormatter()dateFormatter.dateFormat="yyyy-MM-ddHH:mm:ss"letdate=dateFormatter.dateFromString(messagedate)}这是调试器的输出:这是今天开始随机发生的,我不确定为什么通过这么简单的操作日期会改变500年。编辑:这发生在使用佛历的设备上。 最佳答案 这是因为有问题的设

json - SWIFT 不一致的 DateFormatter 结果

我正在使用字符串扩展函数来转换日期字符串。函数是:funcconvertDateString()->String{letdateFormater=DateFormatter()varreturnString=""dateFormater.dateFormat="yyyy-MM-dd'T'hh:mm:ss'Z'"//TakestheformatfromtheJSONjournalentryforelitedangerousdateFormater.locale=Locale.currentifletdateObj=dateFormater.date(from:self){dateForm

ios - 理解 Swift 4 中的 dateFormatter

我无法理解Swift中的日期格式化程序。我正在以这种格式从服务器解析我的日期2018-02-05T14:44:01Z并且因此我设置了这样的DateFormatterdateFormatter.dateFormat="yyyy-MM-dd'T'HH:mm:ss'Z'"。之后,我将它转换为Date,就像这样dateFormatter.date(from:stringDateFromServer)。没关系,它可以工作(在具有24小时时间格式的设备上),我明白为什么。但是,如果我在12小时时间格式的设备上运行dateFormatter.date(from:stringDateFromServe

ios - 如何在 DateFormatters 的日期和时间设置中正确支持 iOS 12 小时/24 小时时间覆盖?

如果您的iOS设备设置为使用默认为12小时制的区域(例如美国)并且您有一个DateFormatter设置如下:vardateFormatter:DateFormatter={letformatter=DateFormatter()formatter.dateFormat="h:mma"returnformatter}()然后,如果在iOS的“设置”中的“日期和时间”中打开“24小时制”开关,它将以24小时格式输出时间。如果您的自定义日期格式是“H:mm”,即24小时制,并且您仍处于默认12小时制区域,那么无论24小时制开关的开/关状态如何,它都会输出24小时制时间.好的,很好,很简单,

swift - 为什么 dateformatter.date() 默认返回 UTC?

我对这种行为感到困惑:letdateFormatter=DateFormatter()dateFormatter.dateFormat="yyyy-MM-ddHH:mm:sszzz"letresult=dateFormatter.date(from:"2017-04-1212:12:12GMT+1")!2017-04-1211:12:12UTC为什么结果会自动转换成UTC?如何获得相同的时区? 最佳答案 Dateobjectsencapsulateasinglepointintime,independentofanyparticul