繁体   English   中英

如何截断Java中字符串的一部分?

[英]How do I truncate a part of the string in Java?

在测试中,我想在收到特定响应时验证系统日期时间和区域。 但是,由于在系统生成响应和测试中进行验证之间存在一点延迟,因此失败了。

回复的日期时间为(例如)-2019-08-09T09:02:30.836 + 10:00

测试验证发生在(例如)-2019-08-09T09:02:30.956 + 10:00

如何删除毫秒位(如果可能)或“ 2:30”之后的所有内容

这样可以将String解析为ZonedDateTime,然后将纳秒设置为0并进行比较。

        ZonedDateTime first = ZonedDateTime.parse("2019-08-09T09:02:30.836+10:00").withNano(0);

        ZonedDateTime second = ZonedDateTime.parse("2019-08-09T09:02:30.956+10:00").withNano(0);

        boolean datesEqual = first.isEqual(second);

这是将字符串解析为ZonedDateTime并检查两个值是否在某个最大持续时间内(例如1秒)的方法。

        ZonedDateTime first = ZonedDateTime.parse("2019-08-09T09:02:30.836+10:00");

        ZonedDateTime second = ZonedDateTime.parse("2019-08-09T09:02:30.956+10:00");

        Duration duration = Duration.between(first, second);

        Duration maximumDuration = Duration.ofSeconds(1);

        boolean withinDuration = duration.minus(maximumDuration).isNegative();

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM