字符串格式化成时间格式_JAVA | 常用的日期/时间格式化方式

4b6fe523a9e62610e6df867a97a228f2.png

引言

  我们在开发过程中,在数据库中经常会看到beginTimeupdateTimeendTime这些字段,这些可能是为了记录业务操作的某个时间、日期等信息。特此,总结一些在代码中常用的日期、时间格式化的方法模板。

DateFormat

   DateFormat继承MessageFormat,是实现日期格式化的抽象类。提供两个方法:

  • format()用于将数值或日期格化式成字符串;
  • parse()方法用于将字符串解析成数值或日期。

parse()用法举例:

String dateStr = "2019-12-10";
System.out.println(DateFormat.getDateInstance().parse(dateStr);

输出结果:

Thur Dec 10 00:00:00 CST 2019

如何得到DateFormat对象?

  1. getDateInstance():返回一个只有日期,无时间的日期格式器;
  2. getImeInstance():返回一个只有时间,没有日期的时间格式器;
  3. getDateTimeInstance():返回一个既有时间、又有日期的格式器。

SimpleDateFormat

   DateFormat在格式化日期时间方面显得不够灵活,需要特定的格式才能解析,为了更好的格式化Date,它的子类SimpleDateFormat出现了。

示例1

public class SimpleDateFormatTest{
public static void main(String[] args) throws ParseException {
Date date = new Date();
//创建SimpleDateFormat对象;
SimpleDateFormat simpleDateFormat1 = new SimpleDateFormat("Gyyyy年中第D天");
// 将date日期解析为字符串
String dateStr = simpleDateFormat1.format(date);
System.out.println("公元日期表示: " + dateStr);

String dateStr2 = "19###十二月##10";
SimpleDateFormat simpleDateFormat2 = SimpleDateFormat("y###MMM##d");
//将字符串解析成日期
System.out.println("一般日期为: " + simpleDateFormat2.parse(dateStr2));
}
}

输出结果:

公元日期表示: 公元2020年中第77天
一般日期为: Thur Dec 10 00:00:00 CST 2019

示例2

Date date = new Date();
SimpleDateFormat dateFormat = new SimpleDateFormat("yyyyMMdd");
System.out.println(dateFormat.format(date);

运行结果:

20200317

DateTimeFormatter

   DateTimeFormatter是Java 8 中java.time.format包下新增的格式器类,不仅可以把日期或时间对象格式化成字符串,也可以把特定格式的字符串解析成日期或时间对象。

format()示例

public class DateTimeFormatterFormatTest{
public static void main(String[] args) {

LocalDateTime localDateTime = LocalDateTime.now();

DateTimeFormatter dateTimeFormatter = DateTimeFormatter.ISO_LOCAL_DATE_TIME;
System.out.println(dateTimeFormatter.format(localDateTime ));
System.out.println(localDateTime.format(dateTimeFormatter));
//全日期时间
DateTimeFormatter dateTimeFormatter2 = DateTimeFormatter.ofLocalizedDateTime(FormatStyle.FULL, FormatStyle.MEDIUM);
System.out.println(dateTimeFormatter2.format(localDateTime ));
System.out.println(localDateTime.format(dateTimeFormatter2));
//模式字符串创建格式器
DateTimeFormatter dateTimeFormatter3 = DateTimeFormatter.ofPattern("Gyyyy-MMM-dd HH:mm:ss");
System.out.println(dateTimeFormatter3.format(localDateTime ));
System.out.println(localDateTime.format(dateTimeFormatter3));
}
}

输出结果

2020-03-17T22:41:20.220
2020-03-17T22:41:20.220
2020年3月17日 星期二 22:41:20
2020年3月17日 星期二 22:41:20
公元2020-三月-17 22:41:20
公元2020-三月-17 22:41:20

parse()示例

public class DateTimeFormatterParseTest{
public static void main(String[] args) {
String str = "2020$$$03$$$dd 22时51分10秒"
DateTimeFormatter dateTimeFormatter = DateTimeFormatter.ofPattern("yyy$$$MMM$$$dd HH时mm分ss秒");
//解析日期
LocalDateTime localDateTime = LocalDateTime.parse(str, dateTimeFormatter);
System.out.println(localDateTime);
}
}

输出结果:

2020-03-17T22:51:10

162b7a3de02796f4ce9db8c69e9d8260.gif

[每篇微语]

明天的期望,让我们忘了这天的痛苦。 

                                       ——李嘉诚

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/551487.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

飞车手游服务器维护,QQ飞车手游更新出现异常怎么办 更新异常原因及解决方法技巧...

最近很多玩家都在体验QQ飞车手游吧,而且最近又一次更新,更新之后,大家发现出现各种异常BUG,那么QQ飞车手游更新出现异常怎么办?更新异常原因及解决方法!如果你也遇到这样的情况,不妨来看看小编是如何解决的吧!QQ飞车手…

域控制器安装完成没有_tcp_udp_究竟什么才叫域控制器?

自从特斯拉问世以来,对他的对标工作全国都在如火如荼的进行,然后大家发现特斯拉的总线网络拓扑跟现有传统车的差别就像安卓系统跟苹果系统的差别一样大,虽然都能打电话发短信装微信,但是内部却是完全不一样。随即全国的汽车从业者…

dell服务器r730安装esxi系统,安装Esxi系统重装Esxi系统

安装esxi系统、或者已经安装了esxi需要重装环境:Dell R730服务器。前期准备:将VMware ESXi 5.5.0的安装镜像要提前准备好,通过光碟、U盘、idrac管理界面挂载方式安装都行。1、加载VMware ESXi 5.5.0版的ISO文件,ESXi引导装入程序&…

10怎么设置pg接口_西门子S7300 PLC时间日期怎么读取?

很多情况下我们都需要根据时间日期的变化来改变自动化系统的控制方式,这时候我们就需要将这些时间和日期的信息,从PLC中调出,下面我们就一起来学习,S7-300PLC是将时间日期信息如何进行存储的?简单应用01S7-300PLC中实际…

获取ajax传过来的数据_大数据编辑问题

【摘要】最近项目用到了大数据的编辑问题,在此做一个简单的总结【作者】田鋆鹏在最近的项目中遇到一个问题,这个问题的起因是因为在调用接口传参是传入的数据太大,导致接口调用失败【重构建议:田甜】1.我们在重构VUE项目的时候, POST请求并没有发成功&am…

crt 8.7.3 黑暗模式_科技有意思 | 黑黑黑黑黑黑黑黑暗模式

不知从什么时候,手机上的黑暗模式成了系统的标配。本来这只是系统中的一个功能,现在经过从iOS 13系统的终于支持、苹果督促包括腾讯在内的开发者尽快适配,到一直不支持黑暗模式的微信也答应尽快开发相关功能,说得多了好像变成了一…

2 s锁是什么_《演员请就位》:一场戏拿了2张S卡,任敏凭什么打败老戏骨?

《演员请就位》终于上映了。这一期的节目明显要比之前要残忍,一上来先给40位演员来了一个市场评级。这一评可不要紧,S级别的都是年轻的演员,除了李志刚。但李志刚是男的,用制片人的话来说“正处在黄金时期”。而女的就比较惨了&am…

根据端口不同来切换站点_根据不同高温气体对窑炉的侵蚀,来选用相应的耐火材料...

根据不同高温气体对窑炉的侵蚀,来选用相应的耐火材料。由于高温窑炉的操作条件不同,因而其燃烧气体存在的侵蚀性成分也是不同的,从而导致与之接触的耐火材料受到各种不同的严重侵蚀。这说明只有根据具体的使用条件选择相应的耐火材料才能获得…

原神的天空岛服务器位置,原神天空岛服和世界树服数据互通吗

原神天空岛服和世界树服是游戏开服初始服务器,玩家们能在官服与B服中自由选择哦,那么原神天空岛服和世界树服数据互通吗、原神天空岛世界树服务器有什么区别吗,跑跑车手游网为大家带来了介绍。*原神天空岛服和世界树服数据互通吗?…

js 正则 或者_如何彻底搞懂面向 Web 开发者的正则表达式?

对于正则表达式,开发者如何跳出云里雾里的谜团?作者 | Chris Achard译者 | 弯月,责编 | 郭芮出品 | CSDN(ID:CSDNnews)以下为译文:正则表达式能在字符串中查找匹配特定模式的子字符串。在JavaScript中,可以…

域环境下文件服务器,域和文件服务器

域和文件服务器 内容精选换一换您可以使用已有的弹性云服务器快速创建伸缩配置。此时,伸缩配置中的云服务器类型、vCPU、内存、镜像、磁盘参数信息将默认与选择的云服务器规格保持一致。登录管理控制台。选择“计算 > 弹性伸缩 > 伸缩实例”。单击“创建伸缩配…

项目的启动顺序_多个项目进行如何做好进度管理

多项目并行比单个项目管理更容易出现意外,因为与单项目管理相比,多项目管理的环境显得更加复杂和难以管控。需要协调来自不同部门的资源;项目的优先级经常会被调整;有些项目是相互依存的;各部门间沟通困难;…

keep老是显示服务器开小差,nginx+keepalived高可用服务器宕机解决方案

原标题:nginxkeepalived高可用服务器宕机解决方案1.基本服务器宕机的主从切换配置两台nginx服务器,分别安装keepalived,配置/etc/keepalived/keepalived.conf主从配置:主nginx修改主nginx下/etc/keepalived/keepalived.conf文件备…

idea启动tomcat没有加载项目_震惊!我三步就搞定了 Tomcat 源码环境搭建!

喜欢请点关注引言随着微服务的流行,轻量级的服务应用器也是跟着大火了。毕竟那些企业级的服务应用器部署搭建成本太高。并且springboot 自带的就是 tomcat 服务。所以我们也有必要学习 tomcat 的相关知识啦,我们在项目中也用的很多,但是我们往…

云服务器装哪些版本的系统好,云服务器按装什么系统好

云服务器按装什么系统好 内容精选换一换云耀云服务器(Hyper Elastic Cloud Server,HECS)是可以快速搭建简单应用的新一代云服务器,具备独立、完整的操作系统和网络功能。提供快速应用部署和简易的管理能力,适用于网站搭建、开发环境等低负载应…

java 加密_Java版SMS4加密解密算法

特别说明:该专栏文章均来源自微信公众号《大数据实战演练》,欢迎关注!前言最近工作中需要实现HBase自定义扩展sms4加密,今天就先来说一下Java版的SMS4加密解密算法的具体实现。一、概述1.1 基本概念本算法是一个分组算法&#xff…

将dll制作成控件_全国首例将“影视作品”制作成“网络图片集”方式侵权案宣判...

最早知道“图解电影”是在百度贴吧,以前贴吧会有很多以截取电影主要剧情截图,介绍电影故事梗概的推荐电影形式,目前也有很多短视频平台和视频平台,推出电影主要内容的剪辑片段,那么,以这样的形式接受一部电…

阿里云 ecs mysql搭建_使用ECS和mysql搭建mysql服务器-阿里云开发者社区

一、首先得在阿里云等云主机上申请两台主机二、现在连上去安装mysql1、通过安装源将mysql下载下来[rootiz2ze2llim71y07x3numlbz ~]# wget https://dev.mysql.com/get/mysql57-community-release-el7-11.noarch.rpm--2018-03-26 16:52:00-- https://dev.mysql.com/get/mysql57-…

kalman滤波在雷达目标跟踪中的应用_简述Automotive radar中的多目标跟踪处理

毫米波雷达在目前的先进辅助驾驶(ADAS)中的应用主要体现在自适应巡航控制(Adaptive Cruise Control,ACC),预碰撞(PreCrash),泊车辅助(Parking Aid),变道辅助(…

oracle 拼接多个列_ORACLE实现类似mysql的find_in_set

在程序开发的过程中有很多的场景都会使用一个字段保存多个信息并且使用符号分隔,比如写一篇文章,保存了所有赞赏人员的ID。在一般的应用中除了保存外,还需要对此字段进行一些搜索,如站点中搜索所有我赞赏的文章。下面我们就来讲一…