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. ultraISO方式制作win10安装U盘

    说明 最近帮朋友安装下win10,用了2种制作U盘启动盘的方式.记录一下也方便大家少走弯路. 准备的工具: 1.utralISO(软通牒) 2.win10镜像 3.16GB U盘,U盘容量 > ...

  2. java interface 介绍

    interface类似于class,只不过interface里的所有方法都是abstract抽象的,当一个非抽象的class实现(implements)一个接口interface时,必须实现接口中所有 ...

  3. vscode配置远程开发环境

    下载vscode 下载好了后,先安装两个插件,商店里面搜索"Chinese",中文语言包, "python"安装包,安装好后重启vscode. 本地的pytho ...

  4. 微服务程序运行步骤及nameko入门案例

    首先一个微服务应用程序需要有服务的生产者和服务的消费者,另外还需要一个注册中心来管理和调度服务 1.服务提供方,即生产者启动服务,并将服务提交到注册中心注册服务 2.服务需求方,即消费者连接到注册中心 ...

  5. 华为云峰会2024,GaussDB扬帆出海,给世界一个更优选择

    本文分享自华为云社区<华为云峰会2024,GaussDB扬帆出海,给世界一个更优选择>,作者:GaussDB 数据库. 2024年2月26~29日,由GSM协会主办的"2024年 ...

  6. 【Azure Data Lake Storage】如何才能保留Blob中的文件目录结构(即使文件夹中文件数量为0的情况下)?

    问题描述 在使用Azure Storage Account Blob时候,发现当文件夹中的Blob(文件)被全部输出后,文件夹也会消失? 为什么它不能像Windows系统中的文件夹一样,即使是一个空文 ...

  7. KVM整理

    管理命令: virsh list --all 查看所有虚拟机状态 virsh start vm1 VM1开机 virsh shutdown vm1 VM1关机 virsh destroy vm1 强制 ...

  8. c++复习笔记——STL(vector)

    c++-----STL容器系列(1) vector 1 介绍 Vector是stl容器中一种常见的容器 ,基本和数组类似,其大小(size)可变,常用于数组长度不确定时来代替数组,当数据超过vecto ...

  9. 文心一言 VS 讯飞星火 VS chatgpt (208)-- 算法导论15.4 5题

    五.设计一个 O($n^2$) 时间的算法,求一个 n 个数的序列的最长单调递增子序列.要写代码的时候,请用go语言. 文心一言,抛panic: 在 Go 语言中设计一个 O(n^2) 时间复杂度的算 ...

  10. Kali 获取任意设备信息

    注意:仅供测试 请勿商用 可获取对方位置 误差小于500m 访问摄像头 访问麦克风 一. 安装环境 #01 mac 安装虚拟机 下载地址:https://www.macyy.cn/archives/1 ...