【问题标题】:Getting the datetime format from the different datetime values从不同的日期时间值获取日期时间格式
【发布时间】:2018-06-14 12:04:57
【问题描述】:

我有一个程序,用户上传一个包含多列的 CSV 文件。第一列是时间,可以是以下任何一种格式。

Format ------ example

ofLocalizedDate(dateStyle) -----   '2011-12-03'  
ofLocalizedTime(timeStyle) -----   '10:15:30'  
ofLocalizedDateTime(dateTimeStyle)  ------ '3 Jun 2008 11:05:30'  
ofLocalizedDateTime(dateStyle,timeStyle) ----- '3 Jun 2008 11:05'  
BASIC_ISO_DATE  ------ '20111203'  
ISO_LOCAL_DATE  ------ '2011-12-03'  
ISO_OFFSET_DATE ------  '2011-12-03+01:00'  
ISO_DATE   ------ '2011-12-03+01:00'; '2011-12-03'  
ISO_LOCAL_TIME  ------ '10:15:30'  
ISO_OFFSET_TIME ------  '10:15:30+01:00'  
ISO_TIME  ------ '10:15:30+01:00'; '10:15:30'  
ISO_LOCAL_DATE_TIME ------ '2011-12-03T10:15:30'  
ISO_OFFSET_DATE_TIME   ------   2011-12-03T10:15:30+01:00  
ISO_ZONED_DATE_TIME ------ '2011-12-03T10:15:30+01:00[Europe/Paris]'  
ISO_DATE_TIME  ------ '2011-12-03T10:15:30+01:00[Europe/Paris]'  
ISO_ORDINAL_DATE  ------- '2012-337'  
ISO_WEEK_DATE  ------   2012-W48-6  
ISO_INSTANT  ------  '2011-12-03T10:15:30Z'  
RFC_1123_DATE_TIME  ------ 'Tue, 3 Jun 2008 11:05:30 GMT'  
Unix seconds -----       1528972575  
Unix Milliseconds -----  1491979683469  
Unix Microseconds    
MM/DD/YYYY HH:mm:ss  
YYYY-MM-DD HH:mm:ss 

我想用 JavaScript 编写一个在浏览器上运行的程序,以便我首先读取 CSV,然后从文件中显示时间格式。
文件读取完成。
但是我不知道如何在所有这些时间和文件中的时间之间进行检查。
任何帮助表示赞赏!
谢谢!

【问题讨论】:

  • 如果本地化的可以在任何语言环境中,那是不可能的。如果您知道语言环境,则可以依次尝试所有可能的格式并查看哪种格式有效。您还需要知道时区或偏移量,因为并非所有格式都包含此信息。最后,您需要知道一个合理的日期时间范围来区分 Unix 秒、毫秒和微秒。
  • 你为什么要接受这样的任意值作为输入?这是没有意义的。一般地解析这样一系列可能的格式是不可能的。本地化的值可以使用任何语言环境。您列出的输入范围甚至不是同一种含义。 “本地...”类型不附加到时间线,并且代表一个时刻,一种与具有偏移或区域的动物完全不同的动物。仅日期、时间和日期与时间是三种不同的事物。你的问题对我来说似乎很荒谬。投票结束。

标签: javascript java html time java-time


【解决方案1】:

一旦你有了价值,现在你需要显示时间。 我认为你需要将你的价值与每一个进行比较。 因为只有大约 25 种时间格式,所以它就像常数时间。

for (i = 0; i < timeFormat.length; i++) {
  for (j = 0;j < timeFormat [i] [j] ; j++) {
    // compare here each format to your value
    // it is tough to write a function but i guess you need to do 
  }
}

【讨论】:

  • 是的!这就是我的想法,但这将是一个很大的功能和很多限制。
  • 因为你需要显示它是哪种类型的时区,那么我猜你需要编写这样的函数。我会看看是否有更简单的解决方案
猜你喜欢
  • 1970-01-01
  • 2020-06-02
  • 2017-01-17
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多