java-time相关内容
我有以下格式的列表,并且希望将此列表按分钟间隔进行分组. List myObjList = Arrays.asList( new Item(LocalDateTime.parse("2020-09-22T00:13:36")), new Item(LocalDateTime.parse("2020-09-22T0
..
我有一个时间戳(毫秒),并使用SimpleDateFormater对其进行格式化,如下所示: SimpleDateFormat sdfDate = new SimpleDateFormat("MM/d/yyyy h:mm a"); return sdfDate.format(new Date(timeStamp)); 现在,我想更改它以使用新的Java 8功能.似乎我真的找不到一种方法
..
ChronoUnit.HOURS.between(start, end)这样的方法会返回long,所以我无法从那里获取分数. 有没有其他方法/方法可以返回分数? 解决方案 ChronoUnit.HOURS.between(start, end)的全部要点是获取两个时间点之间的HOURS数.例如:间隔1或2个小时,没有1.5658个小时*.如果您需要更多的精度,请使用另一个Chrono
..
我需要将日期时间解析为两种不同格式的字符串: 19861221235959Z 1986-12-21T23:59:59Z 以下dateTimeFormatter模式可以正确解析第一种日期字符串 DateTimeFormatter.ofPattern ("uuuuMMddHHmmss[,S][.S]X") 但第二个失败,因为破折号,冒号和T不在预期范围内. 我试图使用可选
..
在Java-8之前,我习惯于始终将任何与日期/时间相关的日期/时间保持为毫秒(自毫秒起),并且仅在出局时(即在UI或日志文件中或在解析用户时)处理人类可读的日期/时间.生成的输入. 我认为这对于Java-8仍然是安全的,现在我正在寻找最简洁的方法来从毫秒级时间戳中获取格式化日期.我尝试过 df = Dateformatter.ofPattern("...pattern..."); df
..
我想获取系统的当前 ZoneOffset . 我尝试这样做,但找不到方法. 另外,我也在寻找解决方案,但没有找到任何解决方法. 用Java可以做到吗? 编辑: 我的问题与此不同.我想知道当前的系统UTC,而不是如何在TimeZone偏移量表示形式或TimeZone存储之间进行转换. 解决方案 是的,有可能: ZoneOffset.systemDefault().getR
..
我正在使用Java 8解析日期并找出两个日期之间的差异. 这是我的摘录: String date1 ="01-JAN-2017"; String date2 = "02-FEB-2017"; DateTimeFormatter df = DateTimeFormatter .ofPattern("DD-MMM-YYYY", en); LocalDate d1 = LocalDate
..
要获得ZoneId,它就像: ZoneId.of("America/Sao_Paulo"); 或 ZoneId.of(ZoneId.SHORT_IDS.get("BET")); 为什么会不存在这样的值Enum的原因,例如: ZoneId.of(ZoneIds.AMERICA_SAO_PAULO); 似乎不太容易出错,而对自动完成更友好? 解决方案 我相信这是因
..
在UTC中将LocalDateTime转换为LocalDateTime. LocalDateTime convertToUtc(LocalDateTime date) { //do conversion } 我在网上搜索.但是没有解决办法 解决方案 我个人更喜欢 LocalDateTime.now(ZoneOffset.UTC); 因为它是最易读的选项.
..
我是Java 8日期时间API的新手,我想知道如何计算以十进制表示的年龄,该年龄返回像30.5这样的double值,这意味着30年零6个月?例如,下面的示例代码为我提供了30.0的输出,但不是30.5的输出( ). LocalDate startDate = LocalDate.of(1984, Month.AUGUST, 10); LocalDate endDate = LocalDat
..
我正在尝试将日期时间字符串解析为LocalDateTime.但是,如果我将所有大写的月份发送给我,则报错,是否有任何解决方法.这是下面的代码 @Test public void testDateFormat(){ DateTimeFormatter formatter= DateTimeFormatter.ofPattern("dd-MMM-yyyy HH:mm:ss");
..
我试图在特定的timeZone上获取当前实例,但是它无法按预期工作.有关如何执行此操作的任何想法? 这就是我所做的: Instant.now(Clock.system(ZoneId.of("America/Los_Angeles"))).truncatedTo(ChronoUnit.SECONDS) 但是,返回的即时时间始终是UTC.我多次更改了ZoneID,但始终是错误的.请告知
..
我有这段代码,这是一个简单的字符串,我想将其解析为LocalDateTime import java.time.LocalDateTime; import java.time.format.DateTimeFormatter; import java.time.format.DateTimeFormatterBuilder; public class Dat
..
以下测试用例可以在Java 10上完美运行: import java.time.Instant; import java.time.format.DateTimeFormatter; import java.time.format.DateTimeFormatterBuilder; class Test { public static void main (String[] arg
..
如何将带有Hibernate的Java 8 OffsetTime和OffsetDateTime保留为适当的SQL类型(TIME_WITH_TIMEZONE和TIMESTAMP_WITH_TIMEZONE)?我在博客中找到了使用EnhancedUserType的LocalTime和LocalDateTime解决方案. 偏移量数据的用户类型如何? 解决方案 由于这是一个非常常见的问题
..
我在MyConstants文件中有一个变量MINDATE.您可以在下面看到声明. public static final LocalDateTime MINDATE = LocalDateTime.of(LocalDate.of(2011, 1, 1), LocalTime.MIDNIGHT); 我只是通过使用MyConstants.MINDATE在另一个类中使用了此变量 然后出现以下
..
我需要跟踪一些格式( DateTimeFormatter 对象)以在我的应用中重复使用。 ➥如何通过使用Java枚举来表示这些格式化程序对象? 解决方案 tl; dr 是。 FormatDateOnly.DD_MM_YYYY .getFormatter() 详细信息 是,您可以轻松存储一些 DateTimeFormatter 枚举中的对象。
..
我正在尝试获取广告位类型的时间。例如,自行车商店从上午9点至晚上9点营业,因此我们可以在那段时间购买自行车。如果有人在晚上5点至晚上7点时段预订自行车,则应该显示上午9点至下午5点(可用),下午5点至7点(不可用)和晚上7点至9点(可用)时段。 ,以便另一个想要预订同一辆自行车的用户可以了解该自行车的用户无法在该时段使用,而只能在可用的时段预订。 我该如何实现? 解决方案 用于
..
使用Java,我有一个 SimpleTimeZone 实例,该实例具有GMT偏移量和来自旧系统的夏令时信息。 我想检索 ZoneId 以便能够使用Java 8时间API。 实际上, toZoneId 返回没有夏令时信息的 ZoneId SimpleTimeZone stz = new SimpleTimeZone(2 * 60 * 60 * 1000,“ GMT”,Calend
..
在 java.time 类,我们如何为 DateTimeFormatter 允许完全停止(。)(句点或点)或逗号(,)作为小数秒的定界符? 例如,以下内容用于解析输入日期在 20090813145607.0Z .0Z 或,0Z 结尾的值>和 20090813145607,0Z 。 字符串输入=“ 20090813145607.0Z” ; DateTimeFormatter f =
..