时间日期相关工具类-获取星期,月份,时间戳转化等

2024-05-13 01:38

本文主要是介绍时间日期相关工具类-获取星期,月份,时间戳转化等,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

package com.onetoo.www.onetoo.utils;import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;/*** Created by longShun on 2016/10/16.* 时间日期相关的工具类* java中获取当前时间的时间戳是13位数的;* 注意:如果服务器返回的时间戳是10位数,需要乘以1000再使用*/
public class TimeUtils {public static final SimpleDateFormat DEFAULT_DATE_FORMAT = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");public static final SimpleDateFormat DATE_FORMAT_DATE = new SimpleDateFormat("yyyy-MM-dd");private TimeUtils() {throw new AssertionError();}/*** long time to string** @param timeInMillis timeInMillis* @param dateFormat   dateFormat* @return String*/public static String getTime(long timeInMillis, SimpleDateFormat dateFormat) {return dateFormat.format(new Date(timeInMillis));}/*** long time to string, format is {@link #DEFAULT_DATE_FORMAT}** @param timeInMillis timeInMillis* @return String*/public static String getTime(long timeInMillis) {return getTime(timeInMillis, DEFAULT_DATE_FORMAT);}/*** get current time in milliseconds** @return long*/public static long getCurrentTimeInLong() {return System.currentTimeMillis();}/*** get current time in milliseconds, format is {@link #DEFAULT_DATE_FORMAT}** @return String*/public static String getCurrentTimeInString() {return getTime(getCurrentTimeInLong());}/*** get current time in milliseconds** @return String*/public static String getCurrentTimeInString(SimpleDateFormat dateFormat) {return getTime(getCurrentTimeInLong(), dateFormat);}/*** 时间转换为时间戳** @param timeStr 时间 例如: 2016-03-09* @param format  时间对应格式  例如: yyyy-MM-dd*/public static long getTimeStamp(String timeStr, String format) {SimpleDateFormat simpleDateFormat = new SimpleDateFormat(format);Date date;try {date = simpleDateFormat.parse(timeStr);return date.getTime();} catch (ParseException e) {e.printStackTrace();}return 0;}/*** 根据时间戳(13位数,10位数需要乘以1000)获取当前月份* @param timeStamp 时间戳* @return month*/public static int getMonth(long timeStamp) {Calendar c = Calendar.getInstance();c.setTimeInMillis(timeStamp);//Time.MONTH及Calendar.MONTH 默认的月份为  0-11return c.get(Calendar.MONTH)+1;}public static String getWeek(long timeStamp) {String week = "周";Calendar calendar = Calendar.getInstance();calendar.setTimeInMillis(timeStamp);int i = calendar.get(Calendar.DAY_OF_WEEK);switch (i) {case 1:week += "日";break;case 2:week += "一";break;case 3:week += "二";break;case 4:week += "三";break;case 5:week += "四";break;case 6:week += "五";break;case 7:week += "六";break;}return week;}/*** 判断当前日期是星期几** @param pTime 设置的需要判断的时间  格式如2012-09-08* @return  星期几*/public static String getWeek(String pTime) {String week = null;try {Date date = DATE_FORMAT_DATE.parse(pTime);long timeStamp = date.getTime();week = getWeek(timeStamp);} catch (ParseException e) {e.printStackTrace();}return week;}
}

这篇关于时间日期相关工具类-获取星期,月份,时间戳转化等的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/984328

相关文章

服务器集群同步时间手记

1.时间服务器配置(必须root用户) (1)检查ntp是否安装 [root@node1 桌面]# rpm -qa|grep ntpntp-4.2.6p5-10.el6.centos.x86_64fontpackages-filesystem-1.41-1.1.el6.noarchntpdate-4.2.6p5-10.el6.centos.x86_64 (2)修改ntp配置文件 [r

sqlite3 相关知识

WAL 模式 VS 回滚模式 特性WAL 模式回滚模式(Rollback Journal)定义使用写前日志来记录变更。使用回滚日志来记录事务的所有修改。特点更高的并发性和性能;支持多读者和单写者。支持安全的事务回滚,但并发性较低。性能写入性能更好,尤其是读多写少的场景。写操作会造成较大的性能开销,尤其是在事务开始时。写入流程数据首先写入 WAL 文件,然后才从 WAL 刷新到主数据库。数据在开始

高效录音转文字:2024年四大工具精选!

在快节奏的工作生活中,能够快速将录音转换成文字是一项非常实用的能力。特别是在需要记录会议纪要、讲座内容或者是采访素材的时候,一款优秀的在线录音转文字工具能派上大用场。以下推荐几个好用的录音转文字工具! 365在线转文字 直达链接:https://www.pdf365.cn/ 365在线转文字是一款提供在线录音转文字服务的工具,它以其高效、便捷的特点受到用户的青睐。用户无需下载安装任何软件,只

usaco 1.2 Palindromic Squares(进制转化)

考察进制转化 注意一些细节就可以了 直接上代码: /*ID: who jayLANG: C++TASK: palsquare*/#include<stdio.h>int x[20],xlen,y[20],ylen,B;void change(int n){int m;m=n;xlen=0;while(m){x[++xlen]=m%B;m/=B;}m=n*n;ylen=0;whi

usaco 1.2 Name That Number(数字字母转化)

巧妙的利用code[b[0]-'A'] 将字符ABC...Z转换为数字 需要注意的是重新开一个数组 c [ ] 存储字符串 应人为的在末尾附上 ‘ \ 0 ’ 详见代码: /*ID: who jayLANG: C++TASK: namenum*/#include<stdio.h>#include<string.h>int main(){FILE *fin = fopen (

【Linux 从基础到进阶】Ansible自动化运维工具使用

Ansible自动化运维工具使用 Ansible 是一款开源的自动化运维工具,采用无代理架构(agentless),基于 SSH 连接进行管理,具有简单易用、灵活强大、可扩展性高等特点。它广泛用于服务器管理、应用部署、配置管理等任务。本文将介绍 Ansible 的安装、基本使用方法及一些实际运维场景中的应用,旨在帮助运维人员快速上手并熟练运用 Ansible。 1. Ansible的核心概念

两个月冲刺软考——访问位与修改位的题型(淘汰哪一页);内聚的类型;关于码制的知识点;地址映射的相关内容

1.访问位与修改位的题型(淘汰哪一页) 访问位:为1时表示在内存期间被访问过,为0时表示未被访问;修改位:为1时表示该页面自从被装入内存后被修改过,为0时表示未修改过。 置换页面时,最先置换访问位和修改位为00的,其次是01(没被访问但被修改过)的,之后是10(被访问了但没被修改过),最后是11。 2.内聚的类型 功能内聚:完成一个单一功能,各个部分协同工作,缺一不可。 顺序内聚:

超强的截图工具:PixPin

你是否还在为寻找一款功能强大、操作简便的截图工具而烦恼?市面上那么多工具,常常让人无从选择。今天,想给大家安利一款神器——PixPin,一款真正解放双手的截图工具。 想象一下,你只需要按下快捷键就能轻松完成多种截图任务,还能快速编辑、标注甚至保存多种格式的图片。这款工具能满足这些需求吗? PixPin不仅支持全屏、窗口、区域截图等基础功能,它还可以进行延时截图,让你捕捉到每个关键画面。不仅如此

log4j2相关配置说明以及${sys:catalina.home}应用

${sys:catalina.home} 等价于 System.getProperty("catalina.home") 就是Tomcat的根目录:  C:\apache-tomcat-7.0.77 <PatternLayout pattern="%d{yyyy-MM-dd HH:mm:ss} [%t] %-5p %c{1}:%L - %msg%n" /> 2017-08-10

MiniGPT-3D, 首个高效的3D点云大语言模型,仅需一张RTX3090显卡,训练一天时间,已开源

项目主页:https://tangyuan96.github.io/minigpt_3d_project_page/ 代码:https://github.com/TangYuan96/MiniGPT-3D 论文:https://arxiv.org/pdf/2405.01413 MiniGPT-3D在多个任务上取得了SoTA,被ACM MM2024接收,只拥有47.8M的可训练参数,在一张RTX