Tag: localdate

Java的BST ZoneId代表什么?

我在DB中存储了这个时间框架:伦敦(BST)的15:00到16:00的任何一天 当我在此时间帧之间收到事件时,我需要执行一个程序IF。 我现在在巴黎(16:22)运行测试,在伦敦的时间是15:22(所以在存储在数据库中的时间帧之间)。 这是我的代码 // create Local Date Time from what I have stored in the DB LocalDateTime dateTime1 = LocalDateTime.of(2017, Month.JUNE, 15, 15, 00); LocalDateTime dateTime2 = LocalDateTime.of(2017, Month.JUNE, 15, 16, 00); Instant now = Instant.now(); System.out.println (now.isAfter (dateTime1.atZone(ZoneId.of(“BST”, ZoneId.SHORT_IDS)).toInstant())); System.out.println (now.isBefore(dateTime2.atZone(ZoneId.of(“BST”, ZoneId.SHORT_IDS)).toInstant())); 理论上现在(巴黎16:22 /伦敦15:22)在伦敦(15:00)的dateTime1之后和伦敦的dateTime2(16:00)之前 但我得到的不是那个dateTime2

Java 8:从纪元时间开始获取周数

给定LocalDate我想转换为自纪元以来的周数 一种方法是: LocalDate date = datePicker.getValue(); // input from your date picker Locale locale = Locale.US; int weekOfYear = date.get(WeekFields.of(locale).weekOfWeekBasedYear()); And X = find weeks since Epoch to prevYear And then result = X + weekOfYear 虽然我们可以找到“自纪元以来的周数”,但是有没有使用Java 8找到它的干净解决方案? 更新:即使上面的解决方案不会工作一周(总是从星期日开始)可能跨越两年

如何将LocalDate对象格式化为MM / dd / yyyy并保持格式化

我正在阅读文本并将日期存储为LocalDate变量。 有没有办法让我保留DateTimeFormatter的格式,这样当我调用LocalDate变量时,它仍然是这种格式。 编辑:我希望parsedDate以25/09/2016的正确格式存储,而不是以字符串forms打印 我的代码: public static void main(String[] args) { LocalDate date = LocalDate.now(); DateTimeFormatter formatters = DateTimeFormatter.ofPattern(“d/MM/uuuu”); String text = date.format(formatters); LocalDate parsedDate = LocalDate.parse(text, formatters); System.out.println(“date: ” + date); // date: 2016-09-25 System.out.println(“Text format ” + text); // Text format 25/09/2016 System.out.println(“parsedDate: ” + parsedDate); // parsedDate: 2016-09-25 // I want the LocalDate […]