假设存在一个time_string: "wallclock(2011-09-22T01:52:00)"
,我可以使用"strptime(time_string, "wallclock(%Y-%m-%dT%H:%M:%S)", &tm)
"
获取日期时间并将其存储到结构体tm中,
,然后使用mktime(&tm)
以秒为单位获取日期
但是在Java中,我找不到关于如何转移字符串"wallclock(2011-09-22T01:52:00)"
的方法,
有什么方法可以做这个工作吗?谢谢:-)
您可以使用SimpleDateFormat
:
DateFormat format = new SimpleDateFormat("'wallclock('yyyy-MM-dd'T'HH:mm:ss')'");
Date parsed = format.parse(text);
(注意,您可能想要适当地设置format
的时区。)
或者最好(IMO)使用Joda Time进行解析:
String pattern = "'wallclock('yyyy-MM-dd'T'HH:mm:ss')'";
DateTimeFormatter formatter = DateTimeFormatter.forPattern(pattern);
LocalDateTime localDateTime = formatter.parseLocalDateTime(text);
这将解析为没有时区的LocalDateTime
。
在Java 8中,您将使用java.time.format.DateTimeFormatter
。
SimpleDateFormat
会让你非常接近。
使用SimpleDateFormat
class。它提供了您需要的功能。