搜索
查看
编辑修改
首页
UNITY
NODEJS
PYTHON
AI
GIT
PHP
GO
CEF3
JAVA
HTML
CSS
搜索
小小林熬夜学编程
这个屌丝很懒,什么也没留下!
关注作者
热门标签
jquery
HTML
CSS
PHP
ASP
PYTHON
GO
AI
C
C++
C#
PHOTOSHOP
UNITY
iOS
android
vue
xml
爬虫
SEO
LINUX
WINDOWS
JAVA
MFC
CEF3
CAD
NODEJS
GIT
Pyppeteer
article
热门文章
1
《2022-2023中国人工智能计算力发展评估报告》发布_人工智能行业应用渗透度
2
解决方案: sqlserver 2008登陆时, 出现服务器主体 "xxxcom" 无法在当前安全上下文下访问数据库 "db_xxx_com"。_载入 sqlserver2008 主体失败
3
web开发后端技能简历_通过这6门课程提高您的Web开发技能
4
ubantu系统更换镜像源(出现E: 无法定位软件包 yum)_command 'yum' not found, did you mean:
5
Ubuntu配置中文环境_ubuntu 如何设置中文环境
6
微信公众号接入讯飞星火大模型_python sparkweb
7
将图片合理分配到n个文件夹_照片文件夹合理明明
8
JavaScript Class类详解_js class
9
python3入门小题目_实现isprime()函数,参数为整数,如果整数是素数
10
2021计算机视觉-包揽所有前沿论文源码 -上半年_wacv 商汤
当前位置:
article
> 正文
java日期与时间戳相互转换大全_java 日期转时间戳
作者:小小林熬夜学编程 | 2024-02-09 13:59:40
赞
踩
java 日期转时间戳
各种时间戳与日期之间相互转换的工具,,,这么多方法肯定有你想要的功能233333333
[java]
view plain
copy
print
?
package
com.crm.util;
import
java.math.BigDecimal;
import
java.text.DecimalFormat;
import
java.text.ParseException;
import
java.text.SimpleDateFormat;
import
java.util.Calendar;
import
java.util.Date;
/**
* @author DingJiaCheng
* */
public
class
DateFormatUtil {
/**
* 时间戳转日期
* @param ms
* @return
*/
public
static
Date transForDate(Integer ms){
if
(ms==
null
){
ms=
0
;
}
long
msl=(
long
)ms*
1000
;
SimpleDateFormat sdf=
new
SimpleDateFormat(
"yyyy-MM-dd HH:mm:ss"
);
Date temp=
null
;
if
(ms!=
null
){
try
{
String str=sdf.format(msl);
temp=sdf.parse(str);
}
catch
(ParseException e) {
e.printStackTrace();
}
}
return
temp;
}
/**
* 获取晚上9点半的时间戳
*
* @return
*/
public
static
int
getTimes(
int
day,
int
hour,
int
minute) {
Calendar cal = Calendar.getInstance();
cal.add(Calendar.DATE, day);
cal.set(Calendar.HOUR_OF_DAY, hour);
cal.set(Calendar.SECOND,
0
);
cal.set(Calendar.MINUTE, minute);
cal.set(Calendar.MILLISECOND,
0
);
return
(
int
) (cal.getTimeInMillis() /
1000
);
}
/**
* 获取当前时间往上的整点时间
*
* @return
*/
public
static
int
getIntegralTime() {
Calendar cal = Calendar.getInstance();
cal.add(Calendar.HOUR_OF_DAY,
1
);
cal.set(Calendar.SECOND,
0
);
cal.set(Calendar.MINUTE,
0
);
cal.set(Calendar.MILLISECOND,
0
);
return
(
int
) (cal.getTimeInMillis() /
1000
);
}
public
static
int
getIntegralTimeEnd() {
Calendar cal = Calendar.getInstance();
cal.set(Calendar.HOUR_OF_DAY,
24
);
cal.set(Calendar.SECOND,
0
);
cal.set(Calendar.MINUTE,
0
);
cal.set(Calendar.MILLISECOND,
0
);
return
(
int
) (cal.getTimeInMillis() /
1000
);
}
/**
* 时间戳转日期
* @param ms
* @return
*/
public
static
Date transForDate3(Integer ms){
if
(ms==
null
){
ms=
0
;
}
long
msl=(
long
)ms*
1000
;
SimpleDateFormat sdf=
new
SimpleDateFormat(
"yyyy-MM-dd HH:mm"
);
Date temp=
null
;
if
(ms!=
null
){
try
{
String str=sdf.format(msl);
temp=sdf.parse(str);
}
catch
(ParseException e) {
e.printStackTrace();
}
}
return
temp;
}
/**
* 时间戳转日期
* @param ms
* @return
*/
public
static
Date transForDate(Long ms){
if
(ms==
null
){
ms=(
long
)
0
;
}
long
msl=(
long
)ms*
1000
;
SimpleDateFormat sdf=
new
SimpleDateFormat(
"yyyy-MM-dd HH:mm:ss"
);
Date temp=
null
;
if
(ms!=
null
){
try
{
String str=sdf.format(msl);
temp=sdf.parse(str);
}
catch
(ParseException e) {
e.printStackTrace();
}
}
return
temp;
}
public
static
String transForDate1(Integer ms){
String str =
""
;
if
(ms!=
null
){
long
msl=(
long
)ms*
1000
;
SimpleDateFormat sdf=
new
SimpleDateFormat(
"yyyy-MM-dd HH:mm:ss"
);
if
(ms!=
null
){
try
{
str=sdf.format(msl);
}
catch
(Exception e) {
e.printStackTrace();
}
}
}
return
str;
}
public
static
String transForDate2(Integer ms){
String str =
""
;
if
(ms!=
null
){
long
msl=(
long
)ms*
1000
;
SimpleDateFormat sdf=
new
SimpleDateFormat(
"yyyy-MM-dd"
);
if
(ms!=
null
){
try
{
str=sdf.format(msl);
}
catch
(Exception e) {
e.printStackTrace();
}
}
}
return
str;
}
public
static
String transForDate4(Integer ms){
String str =
""
;
if
(ms!=
null
){
long
msl=(
long
)ms*
1000
;
SimpleDateFormat sdf=
new
SimpleDateFormat(
"yyyy.MM.dd"
);
if
(ms!=
null
){
try
{
str=sdf.format(msl);
}
catch
(Exception e) {
e.printStackTrace();
}
}
}
return
str;
}
public
static
String transForDate5(Integer ms){
String str =
""
;
if
(ms!=
null
){
long
msl=(
long
)ms*
1000
;
SimpleDateFormat sdf=
new
SimpleDateFormat(
"yyyy/MM/dd HH:mm:ss"
);
if
(ms!=
null
){
try
{
str=sdf.format(msl);
}
catch
(Exception e) {
e.printStackTrace();
}
}
}
return
str;
}
public
static
String transForDateInChinese(Integer ms){
String str =
""
;
if
(ms!=
null
){
long
msl=(
long
)ms*
1000
;
SimpleDateFormat sdf=
new
SimpleDateFormat(
"yyyy年MM月dd日 HH:mm:ss"
);
if
(ms!=
null
){
try
{
str=sdf.format(msl);
}
catch
(Exception e) {
e.printStackTrace();
}
}
}
return
str;
}
/**
* 日期转时间戳
* @param date
* @return
*/
public
static
Integer transForMilliSecond(Date date){
if
(date==
null
)
return
null
;
return
(
int
)(date.getTime()/
1000
);
}
/**
* 获取当前时间戳
* @return
*/
public
static
Integer currentTimeStamp(){
return
(
int
)(System.currentTimeMillis()/
1000
);
}
/**
* 日期字符串转时间戳
* @param dateStr
* @return
*/
public
static
Integer transForMilliSecond(String dateStr){
Date date = DateFormatUtil.formatDate(dateStr);
return
date ==
null
?
null
: DateFormatUtil.transForMilliSecond(date);
}
/**
* 日期字符串转时间戳
* @param dateStr
* @return
*/
public
static
Integer transForMilliSecond(String dateStr,String format){
Date date = DateFormatUtil.formatDate(dateStr,format);
return
date ==
null
?
null
: DateFormatUtil.transForMilliSecond(date);
}
/**
* 日期字符串转时间戳
* @param dateStr
* @param 格式 如"yyyy-mm-dd"
* @return
*/
public
static
Integer transForMilliSecondByTim(String dateStr,String tim){
SimpleDateFormat sdf=
new
SimpleDateFormat(tim);
Date date =
null
;
try
{
date = sdf.parse(dateStr);
}
catch
(ParseException e) {
e.printStackTrace();
}
return
date ==
null
?
null
: DateFormatUtil.transForMilliSecond(date);
}
/**
* 字符串转日期,格式为:"yyyy-MM-dd HH:mm:ss"
* @param dateStr
* @return
*/
public
static
Date formatDate(String dateStr){
SimpleDateFormat sdf=
new
SimpleDateFormat(
"yyyy-MM-dd HH:mm:ss"
);
Date result=
null
;
try
{
result = sdf.parse(dateStr);
}
catch
(ParseException e) {
e.printStackTrace();
}
return
result;
}
/**
* 字符串转日期,格式为:"yyyy-MM-dd HH:mm:ss"
* @param dateStr
* @return
*/
public
static
Date formatDate(String dateStr,String format){
SimpleDateFormat sdf=
new
SimpleDateFormat(format);
Date result=
null
;
try
{
result = sdf.parse(dateStr);
}
catch
(ParseException e) {
e.printStackTrace();
}
return
result;
}
/**
* 日期转字符串
* @param date
* @return
*/
public
static
String formatDate(Date date){
SimpleDateFormat sdf=
new
SimpleDateFormat(
"yyyy-MM-dd HH:mm:ss"
);
String result=
null
;
result = sdf.format(date);
return
result;
}
/**
* 日期转字符串
* @param date
* @return
*/
public
static
String formatDate(Date date,String format){
SimpleDateFormat sdf=
new
SimpleDateFormat(format);
String result=
null
;
result = sdf.format(date);
return
result;
}
/**
* 时间戳格式化输出(httl模版用)
*
* @param ms 时间戳
* @param format 格式化
* @return
*/
public
static
String transForDate(Integer ms, String format){
String str =
""
;
if
(ms!=
null
){
long
msl=(
long
)ms*
1000
;
SimpleDateFormat sdf=
new
SimpleDateFormat(format);
if
(!ms.equals(
0
)){
try
{
str=sdf.format(msl);
}
catch
(Exception e) {
e.printStackTrace();
}
}
}
return
str;
}
/**
* 取BigDecimal类型数的整数或小数部分(httl模版用)
*
* @param b 值
* @param mode 模式 0取整 1去小数部分
* @return
*/
public
static
String splitBigDecimal(BigDecimal b,
int
mode) {
DecimalFormat df =
new
DecimalFormat(
"0.00"
);
String s = df.format(b);
if
(mode==
0
){
return
s.split(
"\\."
)[
0
];
}
else
{
return
"."
+s.split(
"\\."
)[
1
];
}
}
/**
* 计算两个日期之间差的天数(httl模版用)
*
* @param ts1 时间戳1
* @param ts2 时间戳2
* @return
*/
public
static
int
caculate2Days(Integer ts1, Integer ts2) {
Date firstDate = DateFormatUtil.transForDate(ts1);
Date secondDate = DateFormatUtil.transForDate(ts2);
Calendar calendar = Calendar.getInstance();
calendar.setTime(firstDate);
int
dayNum1 = calendar.get(Calendar.DAY_OF_YEAR);
calendar.setTime(secondDate);
int
dayNum2 = calendar.get(Calendar.DAY_OF_YEAR);
return
Math.abs(dayNum1 - dayNum2);
}
/**
* 给手机加密中间四位加星号
*
* @param mobile
* @return
*/
public
String mobileSerect(String mobile){
if
(!StringUtils.isBlank(mobile)){
int
between = mobile.length()/
2
;
mobile = mobile.substring(
0
, between-
2
)+
"****"
+mobile.substring(between+
2
, mobile.length());
}
return
mobile;
}
/**
* 给邮箱加密加星号
*
* @param email
* @return
*/
public
String emailSerect(String email) {
if
(!StringUtils.isBlank(email)){
int
length = email.lastIndexOf(
"@"
);
email = email.substring(
0
,
2
)+
"****"
+email.substring(length-
2
, email.length());
}
return
email;
}
/**
* BigDecimal类型数据相加
*
* @param BigDecimal source
* @param BigDecimal target
* @return
*/
public
BigDecimal sumBigDicimal(BigDecimal source, BigDecimal target) {
source = source.add(target);
return
source;
}
/**
* BigDecimal类型数据相加
*
* @param BigDecimal source
* @param BigDecimal target
* @return
*/
public
BigDecimal sumBigDicimalAndDouble(BigDecimal source, Double target) {
BigDecimal new_target =
new
BigDecimal(target);
source = source.add(new_target);
return
source;
}
/**
* BigDecimal类型数据相减
*
* @param BigDecimal source
* @param BigDecimal target
* @return
*/
public
BigDecimal subBigDicimal(BigDecimal source, BigDecimal target) {
source = source.subtract(target);
return
source;
}
/**
* 获取传入时间和当前时间的时间差
* @return
*/
public
static
Long getTimediff(
int
timeStamp){
Date d1 = DateFormatUtil.transForDate(timeStamp);
Date today =
new
Date();
if
(d1.getTime()<today.getTime()){
return
null
;
}
return
(d1.getTime()-today.getTime())/
1000
;
}
/**
* 获取某周的第一天日期
* @param week 0 当周 1 上一周 -1 下一周
* @return
*/
public
static
String weekFirstDay(
int
week){
Calendar c1 = Calendar.getInstance();
int
dow = c1.get(Calendar.DAY_OF_WEEK);
c1.add(Calendar.DATE, -dow-
7
*(week-
1
)-
5
);
String d1 =
new
SimpleDateFormat(
"yyyy-MM-dd"
).format(c1.getTime());
return
d1+
" 00:00:00"
;
}
/**
* 当前时间加一年
*/
public
static
String addYear(
int
startTime){
Date firstDate = DateFormatUtil.transForDate(startTime);
Calendar calendar = Calendar.getInstance();
calendar.setTime(firstDate);
calendar.add(Calendar.YEAR,
1
);
String d1 =
new
SimpleDateFormat(
"yyyy-MM-dd HH:mm:ss"
).format(calendar.getTime());
return
d1;
}
/**
* 获取某周的最后一天日期
* @param week
* @return
*/
public
static
String weekLastDay(
int
week){
Calendar c1 = Calendar.getInstance();
int
dow = c1.get(Calendar.DAY_OF_WEEK);
c1.add(Calendar.DATE, -dow-
7
*(week-
1
)+
1
);
String d1 =
new
SimpleDateFormat(
"yyyy-MM-dd"
).format(c1.getTime());
return
d1+
" 23:59:59"
;
}
/**
* 和当前时间比对
* @return
*/
public
static
boolean
greaterThanNow(
int
timeStamp){
Date d1 = DateFormatUtil.transForDate(timeStamp);
Date today =
new
Date();
if
(d1.getTime()>=today.getTime()){
return
true
;
}
return
false
;
}
/**
* HH:mm:ss格式时间转换为1970-01-01日的时间戳(也就是只有时间没有日期的情况要求使用时间戳表示时间)
* @author DingJiaCheng
* */
public
static
int
transFromTime(String time){
return
transForMilliSecond(
"1970-01-01 "
+time,
"yyyy-mm-dd HH:mm:ss"
);
}
/**
* 时间戳转换为HH:mm:ss格式时间(日期去除)
* @author DingJiaCheng
* */
public
static
String transToTime(
int
time){
String s =
new
String(transForDate1(time));
String ss[] = s.split(
" "
);
return
ss[
1
];
}
public
static
int
transToChuo(String dateString){
SimpleDateFormat simpleDateFormat =
new
SimpleDateFormat(
"yyyy-MM-dd"
);
int
res =
0
;
try
{
Date date=simpleDateFormat .parse(dateString);
res = (
int
) date.getTime();
}
catch
(ParseException e) {
e.printStackTrace();
}
return
res;
}
public
static
void
main(String[] args) {
//System.out.println(getIntegralTimeEnd());
System.out.println(transForDate2(transForMilliSecond(
"2015-02-25 00:00:00"
)));
//System.out.println(transForMilliSecond("2016-01-25","yyyy-mm-dd"));
//System.out.println(transForDate1(transForMilliSecond("1970-01-01 00:00:00","yyyy-mm-dd HH:mm:ss")));
//System.out.println(currentTimeStamp());
//System.out.println(transForDate(currentTimeStamp()));
//System.out.println(new Date());
//System.out.println(DateUtils.getDate());
System.out.println(transFromTime(
"00:00:01"
));
System.out.println(transToTime(transFromTime(
"15:01:13"
)));
}
}
声明:
本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:
https://www.wpsshop.cn/w/小小林熬夜学编程/article/detail/72332
推荐阅读
article
【Java】
SpringBoot
整合多
数据源
JdbcTemplate
、
Mybatis
、
Jpa
_jdb...
SpringBoot
整合
JdbcTemplate
多
数据源
pom
[详细]
-->
赞
踩
article
【
JAVA
】
SpringBoot
如何
连接
多个
数据库
_一个
java
服务
连接
多个
数据库
...
在开发工作中,我们经常会遇到需要从不同的
数据库
中获取数据的情况,接下来就是介绍一种在
SpringBoot
中
连接
多个
数据库
...
赞
踩
article
java
多
对
多
数据库
操作
_
java
-尝试对
多
个
数据库
实例使用
flyway
...
运行Maven
flyway
插件mvn
flyway
:migrate使用此配置:org.
flyway
db
flyway
-m...
赞
踩
article
【Java】
Spring
Boot
配置
动态
数据源
_
java
的
动态
数据源
...
通过实现
Spring
提供的AbstractRoutingDataSource类,可以实现自己的
数据源
选择逻辑,从而可以实...
赞
踩
article
【Java】
SpringBoot
+
Mybatis
实现多
数据源
连接
_微服务
mybtais
多
数据源
配置...
在项目开发过程中,经常会碰到需要
连接
多个数据库的情况。或者是多个不同数据库的情况。本篇文章在于实现利用SpringBoo...
赞
踩
article
【
java
】
多
数据源
案例
解决方案
_
java
多
数据源
管理...
公司为了规范信息管理,想要统一处理两个子公司员工的数据。这些信息原本分别由子公司各自管理,分别在不同的数据库,但是信息遵...
赞
踩
article
java
中多
数据源
配置
_
java
多
数据源
...
tips:
数据源
的配置可以无限 前提是内存够,主要有两种方法:按包分、按注解分
_
java
多
数据源
java
多
数据源
...
赞
踩
article
java
之多
数据源
配置
_
java
多
数据源
配置
...
多
数据源
配置
_
java
多
数据源
配置
java
多
数据源
配置
一 .
配置
jar包 &nbs...
赞
踩
article
【Java】
Springboot
整合多
数据源
配置
_
java
springboot
配置
多
数据源
my...
主要介绍两种整合方式,分别是
springboot
+mybatis 使用分包方式整合,和
springboot
+drui...
赞
踩
article
DruidDataSource
出现UnsupportedOperationException异常的情...
在开发过程中发现了这个问题,当我们配置druid数据源的时候是以下面的这种方式配置的@Bean@Configuratio...
赞
踩
article
java
多线程
并发
,及
spring
boot
中应用示例_
spring
boot
多线程
高
并发
...
java
多线程
并发
问题,及
spring
boot
中应用示例_
spring
boot
多线程
高
并发
spring
boot
多线...
赞
踩
article
深入了解
Java
中
的
ScheduledFuture
类...
在
Java
中
,
ScheduledFuture
接口是用于表示按计划执行
的
任务
的
一种方式。它是 Future 接口
的
子...
赞
踩
article
java
解决
定时
任务
串行
问题,增加
线程
池_
java
task
串行
...
【代码】
java
解决
定时
任务
串行
问题,增加
线程
池。_
java
task
串行
java
task
串行
...
赞
踩
article
707. 设计
链表
(
java
、
链表
操作
)_
java
链表
的
val
属性
...
设计
链表
的
实现。您可以选择使用单
链表
或双
链表
。单
链表
中
的
节点应该具有两个
属性
:
val
和 next。
val
是当前节点
的
...
赞
踩
article
【
Java
】
Maven
进阶...
-定义自定义属性--> < properties > < spring.version > 5.2.10.RELEASE...
赞
踩
article
Java
JDK1.
8
新特性_
java
: -
source
1.5
中不支持
方法
引用 (请
使用
-so...
一、接口的默认
方法
Java
8
允许我们给接口添加一个非抽象的
方法
实现,只需要
使用
default关键字即可,这个特征又叫做...
赞
踩
article
Java
中
的
双冒号“
:
:
”
_
java
:
:
...
一、双冒号“
:
:
”就是
Java
中
的
方法引用(Method references)方法引用
的
格式是类名
:
:
方法名。一般...
赞
踩
article
java
1.8
下载
、安装、
环境变量
配置...
java
1.8
下载
安装配置教程_
java
1.8
下载
java
1.8
下载
1.
下载
1.1....
赞
踩
article
最全
Java
8
讲解【建议收藏
,
反复研读】
_
java
8
...
目录一、基础知识1)为什么要学习
Java
8
2)行为参数化3)初识 Lambda二、函数式数据处理1)流的使用2)流和集...
赞
踩
article
Java
基础-
Java
8...
Java
8的主要新语法特性如下:Lambda表达式Lambda表达式使
Java
程序员能够编写更加简洁、易读和易维护的代...
赞
踩
相关标签
vue.js
javascript
ecmascript
数据库
java
spring boot
java 多对多数据库操作
开发语言
mybatis
servlet
spring
多数据源
Druid
SpringCloud