['04/30/2019' asDate
有效,但是'30/04/2019' asDate
失败,因为该日期的日期格式为'dd/MM/yyyy'
格式。
如何在Pharo 8中指定其他时间格式?
有几种方法可以从Date
获取String
。您的情况如下:
Date readFrom: '30/4/2019' readStream pattern: 'dd/m/yyyy'
模式中的'm'
也将匹配两位数的月份索引。如果您使用'mm'
,则您的月份索引必须有两位数字,例如'04'
。
DateAnTime
没有类似内容。但是,您可以执行以下操作:
| stream |
stream := '30/4/2019 18:11:03' readStream.
date := Date readFrom: (stream upTo: $ ) readStream pattern: 'dd/m/yyyy'.
time := Time readFrom: stream.
^DateAndTime date: date time: time.
这将流的第一部分(直到空格)用作日期,然后继续时间。请注意,流留在空格旁边的字符处,该字符应该是时间的开始位置。