1 /**
2 *
3 */
4 package study.reliable;
5 /**
6 * @author : Administrator
7 * @date :2022年4月21日 下午9:38:55
8 *
9 */
10 /**
11 * @author Administrator
12 *
13 */
14
15 import java.text.DateFormat;
16 import java.text.ParseException;
17 import java.text.SimpleDateFormat;
18 import java.util.Date;
19
20 public class DateDemo {
21 //将毫秒值转换为日期
22 public void demo1() {
23 //获取当前时间毫秒值
24 long time = System.currentTimeMillis();
25 System.out.println(time); // 1650548737097
26
27 //用Dated对象获取当前时间
28 Date date = new Date();
29 System.out.println(date);// Thu Apr 21 21:46:40 CST 2022
30
31 //将指定时间(毫秒值)传给Date构造器,自动转换为日期,后面记得加上L
32 Date date2 = new Date(time);
33 System.out.println(date2);
34 }
35
36 //格式化日期输出
37 /*
38 * K : A.M./P.M. (0~11)格式小时
39 * H : 一天中的小时 (0~23)
40 * k : 一天中的小时(1~24)
41 * h : A.M./P.M. (1~12)格式小时
42 */
43 private void demo2() {
44 // 获取当前时间对象
45 Date date = new Date();
46
47 // 获取日期格式器
48 DateFormat dateFormat = DateFormat.getDateInstance();
49 // 输出结果为 2022-4-21
50 System.out.println(dateFormat.format(date));
51
52 // 获取日期/时间格式器
53 dateFormat = DateFormat.getDateTimeInstance();
54 // 输出结果为 2022-4-21 21:47:44
55 System.out.println(dateFormat.format(date));
56
57 // 自定义格式 比如晚上九点 用kk就是 21 用hh就是09
58 dateFormat = new SimpleDateFormat("yyyy/MM/dd kk:mm:ss");
59 // 输出结果为 2022/04/21 09:52:15
60 System.out.println(dateFormat.format(date));
61
62 }
63 //字符串转日期
64 private static void demo3() throws ParseException {
65
66 String string = "2017---3---12";
67
68 //获取日期格式对象方法
69 DateFormat dateFormat = DateFormat.getDateInstance();
70
71 //这里的格式要和字符串日期的格式匹配,不然会抛出转换异常
72 dateFormat = new SimpleDateFormat("yyyy---MM---dd");
73
74 Date date = dateFormat.parse(string);
75 //输出结果为 Sun Mar 12 00:00:00 CST 2017
76 System.out.println(date);
77
78 //输出结果为 2017-3-12 0:00:00
79 System.out.println(DateFormat.getDateTimeInstance().format(new Date(dateFormat.parse(string).getTime()) ));
80 }
81 /*
82 * 两日期相减
83 * 将字符串转换为日期对象,再转换成毫秒值,将毫秒值相减,再换算成天数。
84 */
85 private static void demo4() throws ParseException {
86
87 String s1 = "2017-3-22";
88 String s2 = "2017-4-12";
89
90 //定义日期格式器
91 DateFormat dateFormat = DateFormat.getDateInstance();
92
93 //从给定字符串的开始解析文本,以生成一个日期,返回的是Date对象
94 Date date1 = dateFormat.parse(s1);
95 Date date2 = dateFormat.parse(s2);
96
97 //毫秒值用long,int位数不够
98 long time1 = date1.getTime();
99 long time2 = date2.getTime();
100
101 //两日期相减的绝对值
102 long time = Math.abs(time1-time2);
103
104 //输出结果: 21
105 System.out.println(time/1000/60/60/24); //毫秒值转换为天数
106
107 }
108 public static void main(String args[])
109 {
110 DateDemo myDate = new DateDemo();
111 // myDate.demo1();
112 try {
113 myDate.demo3();
114 } catch (ParseException e) {
115 // TODO 自动生成的 catch 块
116 e.printStackTrace();
117 }
118 }
119
120 }

Java日期、字符串、毫秒值格式转换的更多相关文章

  1. 用Java将字符串的首字母转换大小写

    在项目开发的时候会需要统一字符串的格式,比如首字母要求统一大写或小写,那用Java如何实现这一功能?下面一起来学习学习. 话不多说,直接上代码 ? 1 2 3 4 5 6 7 8 9 10 11 12 ...

  2. Java中将字符串转为驼峰格式

    本文不再更新,可能存在内容过时的情况,实时更新请移步我的新博客:Java中将字符串转为驼峰格式: 使用CaseUtils 对Java字符串进行转换为驼峰格式: CaseUtils.toCamelCas ...

  3. java System.currentTimeMillis()毫秒值和具体日期值互相转换

    System.currentTimeMillis()与日期 间是可以相互转换的,通过 SimpleDateFormat dateformat = new SimpleDateFormat(" ...

  4. JAVA,NET RSA密钥格式转换

    JAVA和NET RSA密钥格式相互转换(公钥,私钥) 做了一个小项目遇到java和.net非对称加密问题,java的公钥和私钥就直接是一个字符串的形式展示的,但是.net是以xml简单包裹形式展示的 ...

  5. Java 获取字符串Hash值

    Java 生成字符串的Hash值: /** * A hashing method that changes a string (like a URL) into a hash suitable for ...

  6. java 日期字符串互相转换

    一.把日期转换成字符串 //获取当前时间  Date date = new Date();   //打印date数据类型  System.out.println(date.getClass().get ...

  7. 让用户输入一个日期字符串,将其转换成日期格式, 格式是(yyyy/MM/dd,yyyyMMdd,yyyy-MM-dd)中的一种, 任何一种转换成功都可以; 如果所有的都无法转换,输出日期格式非法。

    第三种方法 while(true) {             Date d;        System.out.println("正在进行第一次匹配,请稍后~—~");     ...

  8. JAVA日期字符串转化,日期加减

    SimpleDateFormat函数语法:  G 年代标志符  y 年  M 月  d 日  h 时 在上午或下午 (1~12)  H 时 在一天中 (0~23)  m 分  s 秒  S 毫秒  E ...

  9. JavaWeb学习记录(四)——日期和数字的格式转换

    一.Date转为String (1) public class DateUtil {    private static SimpleDateFormat sdf = new SimpleDateFo ...

  10. Java 日期字符串与日期类型转换

    1.SimpleDateFormat.format 把日期类型转化到指定格式字符串 public static String convToString(Calendar cld,String temp ...

随机推荐

  1. Oracle 中UNDO与REDO的区别详解

    一 为了更清楚的看出2者区别,请看下表: UNDO                                                                   REDO Rec ...

  2. std::async 与 std::thread 在什么时候使用比较合适

    前提: C++ 11 中提供了多线程的标准库,提供了管理线程.保护共享数据.线程间同步操作.原子操作等类.多线程库对应的头文件是 #include <thread>,类名为 std::th ...

  3. Redis服务端事件处理流程分析

    一.事件处理 1.1 什么是事件 Redis 为什么运行得比较快? 原因之一就是它的服务端处理程序用了事件驱动的处理方式. 那什么叫事件处理?就是把处理程序当成一个一个的事件处理.比如我前面文章:服务 ...

  4. libmatio开发笔记(一):matlab文件操作libmatio库介绍,编译和基础Demo

    前言   Qt可通过matlab的库对mat文件进行读写,第三方库matio也可以对mat文件进行读写,其已经支持mat文件的7.3版本.   libmatio库介绍   matio软件包含一个用于读 ...

  5. 【Java复健指南12】OOP高级03-抽象类与接口

    抽象类 引出 问题: ​ 父类方法有时候具有不确定性 小结: 当父类的某些方法,需要声明,但是又不确定如何实现 时,可以将其声明为抽象方法,那么这个类就是抽象类 例子: public class Ab ...

  6. 【Azure 事件中心】Azure Event Hub客户端遇见 Expired Heartbeat 错误

    问题描述 Azure Event Hub 在消费数端中,经常性遇见 Expired Heartbeat 错误 (consumer-xxxxxxxxxxxxx-c84873c6c828e8df6c843 ...

  7. 【Azure 应用服务】在Azure App Service for Windows 中部署Java/NodeJS/Python项目时,web.config的配置模板内容

    问题描述 在Azure App Service for Windows 中部署web项目时候,需要在wwwroot下设置web.config,对于不同语言的项目,web.config文件中的httpP ...

  8. Nebula 在 Akulaku 智能风控的实践:图模型的训练与部署

    本文整理自 Akulaku 反欺诈团队在 nMeetup·深圳场的演讲,B站视频见:https://www.bilibili.com/video/BV1nQ4y1B7Qd 这次主要来介绍下 Nebul ...

  9. 基于 BDD 理论的 Nebula 集成测试框架重构(下篇)

    本文首发于 Nebula Graph 公众号 NebulaGraphCommunity,Follow 看大厂图数据库技术实践. 在上篇文章中,我们介绍了 Nebula Graph 的集成测试的演进过程 ...

  10. 11、mysql的SQL执行顺序

    编写顺序 SELECT DISTINCT <select list> FROM <left_table> <join_type> JOIN <right_ta ...