Java日期、字符串、毫秒值格式转换
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日期、字符串、毫秒值格式转换的更多相关文章
- 用Java将字符串的首字母转换大小写
在项目开发的时候会需要统一字符串的格式,比如首字母要求统一大写或小写,那用Java如何实现这一功能?下面一起来学习学习. 话不多说,直接上代码 ? 1 2 3 4 5 6 7 8 9 10 11 12 ...
- Java中将字符串转为驼峰格式
本文不再更新,可能存在内容过时的情况,实时更新请移步我的新博客:Java中将字符串转为驼峰格式: 使用CaseUtils 对Java字符串进行转换为驼峰格式: CaseUtils.toCamelCas ...
- java System.currentTimeMillis()毫秒值和具体日期值互相转换
System.currentTimeMillis()与日期 间是可以相互转换的,通过 SimpleDateFormat dateformat = new SimpleDateFormat(" ...
- JAVA,NET RSA密钥格式转换
JAVA和NET RSA密钥格式相互转换(公钥,私钥) 做了一个小项目遇到java和.net非对称加密问题,java的公钥和私钥就直接是一个字符串的形式展示的,但是.net是以xml简单包裹形式展示的 ...
- Java 获取字符串Hash值
Java 生成字符串的Hash值: /** * A hashing method that changes a string (like a URL) into a hash suitable for ...
- java 日期字符串互相转换
一.把日期转换成字符串 //获取当前时间 Date date = new Date(); //打印date数据类型 System.out.println(date.getClass().get ...
- 让用户输入一个日期字符串,将其转换成日期格式, 格式是(yyyy/MM/dd,yyyyMMdd,yyyy-MM-dd)中的一种, 任何一种转换成功都可以; 如果所有的都无法转换,输出日期格式非法。
第三种方法 while(true) { Date d; System.out.println("正在进行第一次匹配,请稍后~—~"); ...
- JAVA日期字符串转化,日期加减
SimpleDateFormat函数语法: G 年代标志符 y 年 M 月 d 日 h 时 在上午或下午 (1~12) H 时 在一天中 (0~23) m 分 s 秒 S 毫秒 E ...
- JavaWeb学习记录(四)——日期和数字的格式转换
一.Date转为String (1) public class DateUtil { private static SimpleDateFormat sdf = new SimpleDateFo ...
- Java 日期字符串与日期类型转换
1.SimpleDateFormat.format 把日期类型转化到指定格式字符串 public static String convToString(Calendar cld,String temp ...
随机推荐
- Golang gRPC学习(05): retry重试
什么是重试 如果服务出现了错误,主要是网络,服务器出现了短暂异常的时候,该怎么办? 我们都会人工或者自动的重新连接服务试试,看服务是否恢复可用了. 这种重新进行连接服务的一种方式就是重试.如果是在微服 ...
- LayUI样式优化
如下是LayUI框架中页面元素的CSS优化样式: /* 表单输入框宽度 */ .layui-form-item .layui-input-inline { width: 295px; } /* 下拉框 ...
- 一个Git Commit Message模板
一个统一的commit消息模板可以约束团队成员使用一致的方式提交变更信息,这样也方便集成工具进行合规检查. 通常来讲,commit信息应该包含如下内容: <type>(<scope& ...
- 【Azure Function App】解决Function App For Container 遇见ServiceUnavailable的异常
问题描述 在使用Terraform创建Function App 后,部署函数时候遇见 ServiceUnavailable (Bad Request -- Encountered an error ( ...
- 数据处理(传值& 乱码)
处理前端提交的数据 1.提交的域名称和处理方法的参数名一致时 /hello?name=akagi @RequestMapping("/hello") public Strin ...
- leaflet 领图 一个本地的类似百度地图工具-不连外网
官网:https://leafletjs.com/ 二次开发手册-中文:http://112.91.146.167:9090/api/ 领图(一款给力的开源离线地图解决方案) https://blog ...
- baidu 突然打不开了 20210621
换了个dns 123.125.81.6 114.114.114.114
- C++学习笔记之指针引用
目录 指针 指针定义 左值与右值 指针数组与数组指针 const与指针 指针的指针 NULL指针 内存泄漏(Memory Leak)问题 智能指针 引用 指针 指针定义 指针定义的基本形式:指针本身就 ...
- stm32文件系统读写操作调试总结
一 问题 最近使用到了文件系统的读写,中间遇到了一些问题值得深思. 二 源码解析 创建文件: FRESULT res; do { sprintf(filename,"/sensor_si ...
- 50HZ陷波器的原理和实物开发设计
原理 陷波滤波器指的是一种可以在某一个频率点迅速衰减输入信号,以达到阻碍此频率信号通过的滤波效果的滤波器.陷波滤波器属于带阻滤波器的一种,只是它的阻带非常狭窄,起阶数必须是二阶(含二阶)以上. ...