Questions tagged «java-time»

java.time包是一个现代的日期时间框架,它在Java 8中首次由JSR 310定义,取代了java.util.Date和.Calendar类。受Joda-Time启发,但重新设计。它使用ISO 8601标准作为解析和生成字符串的默认值,并包括表示仅日期,仅时间和时间跨度值的类。

3
使用新的日期时间API格式化日期
我正在使用新的日期时间API,但是在运行时: public class Test { public static void main(String[] args){ String dateFormatted = LocalDate.now() .format(DateTimeFormatter .ofPattern("yyyy-MM-dd HH:mm:ss")); System.out.println(dateFormatted); } } 它抛出: Exception in thread "main" java.time.temporal.UnsupportedTemporalTypeException: Unsupported field: HourOfDay at java.time.LocalDate.get0(LocalDate.java:680) at java.time.LocalDate.getLong(LocalDate.java:659) at java.time.format.DateTimePrintContext.getValue(DateTimePrintContext.java:298) at java.time.format.DateTimeFormatterBuilder$NumberPrinterParser.format(DateTimeFormatterBuilder.java:2543) at java.time.format.DateTimeFormatterBuilder$CompositePrinterParser.format(DateTimeFormatterBuilder.java:2182) at java.time.format.DateTimeFormatter.formatTo(DateTimeFormatter.java:1745) at java.time.format.DateTimeFormatter.format(DateTimeFormatter.java:1719) at java.time.LocalDate.format(LocalDate.java:1685) at Test.main(Test.java:23) 查看LocalDate类的源代码时,我看到: private int …

12
Spring Boot中的JSON Java 8 LocalDateTime格式
我在Spring Boot应用程序中格式化Java 8 LocalDateTime时遇到一个小问题。对于“正常”日期,我没有问题,但是LocalDateTime字段转换为以下内容: "startDate" : { "year" : 2010, "month" : "JANUARY", "dayOfMonth" : 1, "dayOfWeek" : "FRIDAY", "dayOfYear" : 1, "monthValue" : 1, "hour" : 2, "minute" : 2, "second" : 0, "nano" : 0, "chronology" : { "id" : "ISO", "calendarType" : "iso8601" } } 虽然我想将其转换为: "startDate": …



6
如何从LocalDate和LocalDateTime中提取纪元?
如何Long从LocalDateTime或的实例提取纪元值LocalDate?我已经尝试了以下方法,但是它给了我其他结果: LocalDateTime time = LocalDateTime.parse("04.02.2014 19:51:01", DateTimeFormatter.ofPattern("dd.MM.yyyy HH:mm:ss")); System.out.println(time.getLong(ChronoField.SECOND_OF_DAY)); // gives 71461 System.out.println(time.getLong(ChronoField.EPOCH_DAY)); // gives 16105 我想要的只是1391539861本地datetime 的值"04.02.2014 19:51:01"。我的时区是Europe/Oslo夏令时的UTC + 1。
102 java  time  java-8  epoch  java-time 



7
在Java 8中有什么方法可以将ZoneId转换为ZoneOffset吗?
我通过method1有一个纪元和一个zoneId。它可以使用系统默认的zoneId转换为LocalDateTime,但是我找不到通过method2将纪元转换为LocalDateTime的方法,因为没有ZoneOffset.systemDefault。我认为它是晦涩的。 import java.time.{Instant, LocalDateTime, ZoneId, ZoneOffset} val epochSecond = System.currentTimeMillis() / 1000 LocalDateTime.ofInstant(Instant.ofEpochSecond(epochSecond), ZoneId.systemDefault())//method1 LocalDateTime.ofEpochSecond(epochSecond, 0, ZoneOffset.MAX)//method2

7
Unix纪元到Java Date对象的时间
我有一个包含UNIX Epoch time的字符串,我需要将其转换为Java Date对象。 String date = "1081157732"; DateFormat df = new SimpleDateFormat(""); // This line try { Date expiry = df.parse(date); } catch (ParseException ex) { ex.getStackTrace(); } 标记的行是我遇到麻烦的地方。我无法计算出SimpleDateFormat()的参数是什么,或者即使我应该使用SimpleDateFormat()。
84 java  date  java-time 



10
如何在Spring中使用LocalDateTime RequestParam?我得到“无法将字符串转换为LocalDateTime”
我使用Spring Boot并包含jackson-datatype-jsr310在Maven中: <dependency> <groupId>com.fasterxml.jackson.datatype</groupId> <artifactId>jackson-datatype-jsr310</artifactId> <version>2.7.3</version> </dependency> 当我尝试使用Java 8日期/时间类型的RequestParam时, @GetMapping("/test") public Page<User> get( @RequestParam(value = "start", required = false) @DateTimeFormat(iso = DateTimeFormat.ISO.DATE_TIME) LocalDateTime start) { //... } 并使用以下网址进行测试: /test?start=2016-10-8T00:00 我收到以下错误: { "timestamp": 1477528408379, "status": 400, "error": "Bad Request", "exception": "org.springframework.web.method.annotation.MethodArgumentTypeMismatchException", "message": "Failed to convert value of type [java.lang.String] to required …

4
Java8将java.util.Date转换为java.time.ZonedDateTime
我得到以下异常而试图转换java.util.Date到java.time.LocalDate。 java.time.DateTimeException: Unable to obtain ZonedDateTime from TemporalAccessor: 2014-08-19T05:28:16.768Z of type java.time.Instant 代码如下: public static Date getNearestQuarterStartDate(Date calculateFromDate){ int[] quaterStartMonths={1,4,7,10}; Date startDate=null; ZonedDateTime d=ZonedDateTime.from(calculateFromDate.toInstant()); int frmDateMonth=d.getMonth().getValue(); 我ZonedDateTime上课的方式有问题吗? 根据文档,这应将java.util.Date对象转换为ZonedDateTime。上面的日期格式是标准日期? 我必须在Joda时间回退吗? 如果有人可以提供一些建议,那就太好了。

1
尽管Oracle教程示例代码中显示了Java 8 Instant类,但它没有plusHours方法
该类的Oracle Tutorial页面Instant显示以下示例代码: Instant oneHourLater = Instant.now().plusHours(1); 当我尝试编译此代码时,编译器将引发错误: 错误 InstantPrint.java:6:错误:找不到符号 Instant oneHourLater = Instant.now()。plusHours(1); ^ 符号:方法plusHours(int) 位置:班级瞬发 但是此Java文档中提到了plusHours()方法,但是我检查了此类,Instant并且其中不包含plusHours()方法。 此后,为什么plusHours()在示例中提及此方法?
76 java  java-time 

1
年份和年份之间有什么区别?
在DateTimeFormatter类文档定义了不同的符号u为一年,y一年的时代:https://docs.oracle.com/javase/8/docs/api/java/time/format/DateTimeFormatter.html#patterns 年份和年份之间有什么区别?
70 java-8  java-time 

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.