JDK8 获取带时区的String类型的时间

    技术2022-07-13  71

    //处理成:2020-07-01 19:57:10.000+8:00 private static String getNowStringWithZone() { LocalDateTime localDateTime = LocalDateTime.now(); long now = Timestamp.valueOf(localDateTime).getTime(); Instant fromUnixTimestamp = Instant.ofEpochSecond(now / 1000); //以下要申明时区,否则默认为UTC0时区 String unix_time2 = fromUnixTimestamp.atZone(TimeZone.getDefault().toZoneId()).toString(); String part1 = unix_time2.substring(0, unix_time2.indexOf("+")); String part2 = unix_time2.substring(unix_time2.indexOf("+"), unix_time2.length()); String unix_time2_final = part1 + ".000" + part2; String nowString = unix_time2_final.substring(0, unix_time2_final.indexOf("[")); return nowString; }

    其中String part1,part2,可以省略,那么获取到的就是2020-07-01 19:57:10+8:00(没有毫秒级数据)

    Processed: 0.029, SQL: 9