`
somefuture
  • 浏览: 1089691 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

java8中的时间处理7 - 向前兼容(新老类转换)

 
阅读更多

我们不太可能使用jdk8以后就把原来的代码都改成新api。所以新旧日期类会共存一段时间。

这篇提供他们之间的转换。

    public static void main(String[] args) {
        //Date 转 Instant
        Instant timestamp = new Date().toInstant();
        //其他类都有ofInstant方法用来转换Instant
        LocalDateTime date = LocalDateTime.ofInstant(timestamp, ZoneId.of(ZoneId.SHORT_IDS.get("CTT")));
        System.out.println(date);

        //Calendar 转 Instant
        Instant time = Calendar.getInstance().toInstant();
        System.out.println(time);
        //TimeZone 转 ZoneId
        ZoneId defaultZone = TimeZone.getDefault().toZoneId();
        System.out.println(defaultZone);

        //Calendar 转 ZonedDateTime
        ZonedDateTime gregorianCalendarDateTime = new GregorianCalendar().toZonedDateTime();
        System.out.println(gregorianCalendarDateTime);

        //兼容API
        Date dt = Date.from(Instant.now());
        System.out.println(dt);

        TimeZone tz = TimeZone.getTimeZone(defaultZone);
        System.out.println(tz);

        GregorianCalendar gc = GregorianCalendar.from(gregorianCalendarDateTime);
        System.out.println(gc);
    }

 

 

分享到:
评论

相关推荐

    Java 所有字符串转UTF-8 万能工具类-GetEncode.java

    不需要关心接受的字符串编码是UTF_8还是GBK,还是ios-8859-1,自动转换为utf-8编码格式,无需判断字符串原有编码,用法://处理编码String newStr = GetEncode.transcode(oldStr);

    java jdk-8u51-windows-i586.exe

    例如,JDK 8引入了Lambda表达式、方法引用来简化多线程编程,改进了日期和时间API,以及新的Stream API,极大地提高了代码的简洁性和可读性。 对于Windows i586用户来说,这个版本确保了他们在32位操作系统上的兼容...

    java-jdk-8u51-windows-x64.exe.zip

    2. **Java 8**: Java 8是Java平台的重大更新,引入了多项新特性,包括: - **Lambda表达式**: 为Java引入了函数式编程的概念,允许以简洁的方式处理集合数据。 - **方法引用和构造器引用**: 允许直接引用已有的...

    java将数字转换为时间格式

    Java提供了多种处理日期和时间的方式,包括传统的`java.util.Date`和`java.text.SimpleDateFormat`等类,以及自Java 8起引入的新API如`java.time`包下的`LocalDate`、`LocalTime`和`LocalDateTime`等。 - **传统API...

    java图片处理工具类JAR包 java-image-scalingjar

    java图片处理工具类JAR包 java-image-scalingjar

    JAVA字符编码:Unicode,ISO-8859-1,GBK,UTF-8编码及相互转换

    在Java中,可以使用`String`类的方法来实现不同编码之间的转换。具体来说: - `getBytes(String charsetName)` 方法用于将字符串转换为特定编码的字节数组。 - `new String(byte[], String charsetName)` 方法用于...

    javacv-platform-1.3-bin.zip

    使用JavaCV 1.3,开发者可以轻松地集成计算机视觉功能到Java或Android应用中,无需处理复杂的原生库链接和依赖问题。例如,你可以创建一个简单的Java应用来捕获摄像头视频,进行实时的图像分析,或者在Android设备上...

    java基础教程----精华版

    - Java的`java.io`包提供了丰富的类处理输入输出,如FileInputStream, FileOutputStream, BufferedReader, BufferedWriter等。 - 使用流(Stream)模型处理数据,分为字节流和字符流,以及输入流和输出流。 6. **...

    Java中压缩与解压--中文文件名乱码解决办法

    这个问题主要源于Java中默认使用的编码方式与实际文件名编码不一致,尤其是在Windows系统下,文件名通常采用GB2312或GBK编码,而Java中的`ZipInputStream`和`ZipOutputStream`类默认使用的是Unicode编码,这种编码...

    java+poi实现word转换html兼容03和07

    在这个场景中,我们将重点讨论如何使用Java POI库将Word文档转换为HTML格式,并确保这种转换对Microsoft Word 2003(.doc)和2007(.docx)版本都兼容。 首先,我们需要引入Apache POI库到Java项目中。这可以通过...

    JAVA8API-官方文档下载-中文版

    5. **日期和时间API**: Java 8引入了`java.time`包,提供`LocalDate`、`LocalTime`、`LocalDateTime`等类,替代了原有的`java.util.Date`和`Calendar`,使日期和时间的操作更加直观。 **模块系统(Project Jigsaw)...

    javacv-platform-1.3.3-bin.zip

    javacv官方最新全量jar包,javacv-platform-1.3.3-bin.zip,由于github国内下载较慢,此文件只作为分流,由于现在csdn没办法设置免费资源了,只能设置最低的2分,望大家见谅!

    Java字节码转换工具—Retrotranslator

    依赖于转换工具来解决向下兼容问题可能会耗费更多的时间和精力,且可能引入新的问题。 此外,Retrotranslator在特定场景下尤其受到欢迎,比如在Sun Microsystems(现Oracle)对Mac平台的JDK更新不及时的情况下,...

    java jdk-8u65-windows-x64.exe

    java jdk 8u65 for windows x64 截至2015.11.03 最新版JDK For windows x64 sha256: 589633b8688ef7331a861a6d87487a82ed40bc6c287c4c567c4f91737c5011d5 md5: c497b2e943ab0c5486ec40becf9d7d96 大小:186.57 MB

    java jdk-8u65-linux-x64.tar.gz

    java jdk 8u65 for Linux x64 tar.gz 截至2015.11.03 最新版JDK For Linux x64 tar.gz sha256: 88db2aacdc222c2add4d92822f528b7a2101552272db4487f33b38b0b47826e7 md5: 196880a42c45ec9ab2f00868d69619c0 大小:...

    java源码包---java 源码 大量 实例

    Applet钢琴模拟程序java源码 2个目标文件,提供基本的音乐编辑功能。编辑音乐软件的朋友,这款实例会对你有所帮助。 Calendar万年历 1个目标文件 EJB 模拟银行ATM流程及操作源代码 6个目标文件,EJB来模拟银行ATM...

    mysql-connector-java-5.1.47 jar包

    在实际开发中,`mysql-connector-java-5.1.47.jar`通常会被添加到项目的类路径中,以便在运行时自动加载。此外,随着MySQL的版本升级,开发者可能需要更新到更匹配的JDBC驱动版本以利用新功能或解决兼容性问题。 ...

    HikariCP java7和8通用的jar包

    这个“HikariCP java7和8通用的jar包”意味着它兼容Java 7和Java 8两个版本,使得那些还在使用Java 7的项目也能享受到HikariCP带来的性能提升。 1. **HikariCP的基本概念**: - 连接池:在Java应用中,频繁地创建...

    64位的 luajava-1.1-x64-lua51.zip

    《64位Luajava-1.1在Win7系统中的应用详解》 Luajava是Lua编程语言与Java平台之间的重要桥梁,它允许Lua代码直接调用Java类库,实现两者之间的无缝交互。本文将深入探讨64位版本的Luajava-1.1在64位Windows 7操作...

    JAVA_API1.6文档(中文)

    java.util 包含 collection 框架、遗留的 collection 类、事件模型、日期和时间设施、国际化和各种实用工具类(字符串标记生成器、随机数生成器和位数组)。 java.util.concurrent 在并发编程中很常用的实用工具类...

Global site tag (gtag.js) - Google Analytics