JDK1.8时间获取


package com.zhao.tool;

import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStream;
import java.time.Instant;
import java.time.LocalDate;
import java.time.LocalDateTime;
import java.time.LocalTime;
import java.time.format.DateTimeFormatter;


public class TestDemo {
    public static void main(String[] args) throws Exception {

        LocalDate d = LocalDate.now(); // 当前日期
        LocalTime t = LocalTime.now(); // 当前时间
        LocalDateTime dt = LocalDateTime.now(); // 当前日期和时间 获取到的总是以当前默认时区返回的
        System.out.println(d); // 严格按照ISO 8601格式打印
        System.out.println(t); // 严格按照ISO 8601格式打印
        System.out.println(dt); // 严格按照ISO 8601格式打印
        LocalDateTime dt1 = LocalDateTime.now(); // 当前日期和时间
        LocalDate d1 = dt1.toLocalDate(); // 转换到当前日期
        LocalTime t1 = dt1.toLocalTime(); // 转换到当前时间
        //获取当前时间的 日期
        System.out.println(d1);
        //获取当前时间的 时间
        System.out.println(t1);

//        通过获取当前时间戳。
        System.out.println(System.currentTimeMillis());
        /**
         * jdk 1.8 DateTimeFormatter取代了  SimpleDateFormat (用于格式化时间)
         */
        // 自定义格式化:
        DateTimeFormatter dtf = DateTimeFormatter.ofPattern("yyyy/MM/dd HH:mm:ss");
        System.out.println(dtf.format(LocalDateTime.now()));

        // 用自定义格式解析:
        LocalDateTime dt2 = LocalDateTime.parse("2020/02/08 15:16:17", dtf);
        System.out.println(dt2);
        /**
         * Instant.now()获取当前时间戳,效果和System.currentTimeMillis()类似
         * 它和System.currentTimeMillis()返回的long相比,只是多了更高精度的纳秒。
         */
        Instant now = Instant.now();
        System.out.println(now.getEpochSecond()); //
        System.out.println(now.toEpochMilli()); // 毫秒

//        try (InputStream input = new FileInputStream("properties/custom.properties")) {
//            int n;
//            while ((n = input.read()) != -1) {
//                System.out.println(n);
//            }
//        } // 编译器在此自动为我们写入finally并调用close()
        File f = new File("..");
        System.out.println(f.getPath());
        System.out.println(f.getAbsolutePath());
        System.out.println(f.getCanonicalPath());
        /**
         * File对象有一个静态变量用于表示当前平台的系统分隔符
         * 根据当前平台打印"\"或"/"
         */
        System.out.println(File.separator);

        File f1 = new File("D:\\projectCode\\CodeGenerationTool");
        File[] fs1 = f1.listFiles(); // 列出所有文件和子目录
        for (File file : fs1) {
            System.out.println(file);
        }
    }
}

 参考 : https://www.liaoxuefeng.com/wiki/1252599548343744/1303871087444002


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM