SimpleDateFormat这个类来解决我们的时间格式问题。

SimpleDateFormat 是一个以与语言环境相关的方式来格式化和分析日期的具体类。它允许进行格式化(日期 -> 文本)、分析(文本 -> 日期)和规范化。SimpleDateFormat 使得可以选择任何用户定义的日期-时间格式的模式.

日期和时间模式

日期和时间格式由日期和时间模式 字符串指定。在日期和时间模式字符串中,未加引号的字母 'A' 到 'Z' 和 'a' 到 'z' 被解释为模式字母,用来表示日期或时间字符串元素。文本可以使用单引号 (') 引起来,以免进行解释。"''" 表示单引号。所有其他字符均不解释;只是在格式化时将它们简单复制到输出字符串,或者在分析时与输入字符串进行匹配。

定义了以下模式字母(所有其他字符 'A' 到 'Z' 和 'a' 到 'z' 都被保留):

字母  日期或时间元素  表示  示例

G  Era 标志符  Text  AD

y  年  Year  1996; 96

M  年中的月份  Month  July; Jul; 07

w  年中的周数  Number  27

W  月份中的周数  Number  2

D  年中的天数  Number  189

d  月份中的天数  Number  10

F  月份中的星期  Number  2

E  星期中的天数  Text  Tuesday; Tue

a  Am/pm 标记  Text  PM

H  一天中的小时数(0-23)  Number  0

k  一天中的小时数(1-24)  Number  24

K  am/pm 中的小时数(0-11)  Number  0

h  am/pm 中的小时数(1-12)  Number  12

m  小时中的分钟数  Number  30

s  分钟中的秒数  Number  55

S  毫秒数  Number  978

z  时区  General time zone  Pacific Standard Time; PST; GMT-08:00

Z  时区  RFC 822 time zone  -0800

以下示例显示了如何在美国语言环境中解释日期和时间模式。给定的日期和时间为美国太平洋时区的本地时间 2001-07-04 12:08:56

日期和时间模式  结果

"yyyy.MM.dd G 'at' HH:mm:ss z"  2001.07.04 AD at 12:08:56 PDT

"EEE, MMM d, ''yy"  Wed, Jul 4, '01

"h:mm a"  12:08 PM

"hh 'o''clock' a, zzzz"  12 o'clock PM, Pacific Daylight Time

"K:mm a, z"  0:08 PM, PDT

"yyyyy.MMMMM.dd GGG hh:mm aaa"  02001.July.04 AD 12:08 PM

"EEE, d MMM yyyy HH:mm:ss Z"  Wed, 4 Jul 2001 12:08:56 -0700

"yyMMddHHmmssZ"  010704120856-0700

"yyyy-MM-dd'T'HH:mm:ss.SSSZ"  2001-07-04T12:08:56.235-0700

SimpleDateFormat 在编程中的实际应用实例:

(一)格式化(日期 -> 文本)

一般地,中文中常用的  日期 时间如:20070719 20:29:30

SimpleDateFormat formater = new SimpleDateFormat("yyyyMMdd hh:mm:ss");

System.out.println("Date to String "+formater.format(new Date()));

相近的常用形式还有 yyMMdd hh:mm:ss  yyyy-MM-dd hh:mm:ss  dd-MM-yyyy hh:mm:ss

但是值得注意是:这种格式(19JUL07 )及其相近的形式,就有点小技巧  19JUL07

SimpleDateFormat formater = new SimpleDateFormat("ddMMMyy",,new Locale("US"))

System.out.println("Date to String "+formater.format(new Date()).toUpperCase());

由于是英文的所以应该使用 Locale 对象参数,否则就使用的是默认本地 Locale 。

(二)分析(文本 -> 日期)

一般地,想要什么要的格式的时间就就使用什么形式的日期时间模式和文本参数,例如 2007-7-19 则返回一个java.util.Date型的时间对象,时分秒都补0

formater = new SimpleDateFormat("yyyyMMMdd",new Locale("US"));

try ...{

System.out.println("String to Date "+formater.parse("2007sep01"));

} catch (ParseException e) ...{

e.printStackTrace();

}

特别地,

formater = new SimpleDateFormat("yyyyMMMdd",new Locale("US"));

try ...{

System.out.println("String to Date "+formater.parse("2007sep01"));

} catch (ParseException e) ...{

e.printStackTrace();

}

它也返回一个java.util.Date型的日期对象,时分秒都补0

(三)文本 - > Timestamp  、日期 -> Timestamp

Timestamp t ;

SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");

try ...{

t = new Timestamp(format.parse("2007-07-19 00:00:00").getTime());

} catch (ParseException e) ...{

e.printStackTrace();

}

Timestamp t ;

SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");

t = new Timestamp(new Date().getTime());

date日期格式化 java_Java关于时间和日期格式化的方法相关推荐

  1. PHP date 格式化一个本地时间/日期

    2019独角兽企业重金招聘Python工程师标准>>> date (PHP 4, PHP 5) date - 格式化一个本地时间/日期 说明 string date ( string ...

  2. date 显示或设置系统时间和日期

    显示或设置系统时间和日期 date [options] [+format] date [options] [new date] date用来显示系统的时间和日期,超级用户可以使用date来更改系统时钟 ...

  3. linux中如何使用date来显示特定的时间或者日期

    linux环境中,在使用date命令的时候,可以通过-d指定日期的字符串来显示日期. 几种常用实例 通过date显示昨天的日期 date -d 'yesterday'#通过-d后面接日期上字符串202 ...

  4. convert.todatetime指定日期格式_MATLAB的时间与日期

    7  日期和时间 MATLAB在2014b版本中将日期和时间独立成了一个数据类型,新的版本中对于时间数据的处理功能更为强大.比如datetime和duration等函数,可以支持对时间的高效计算.对比 ...

  5. python pandas 日期格式_python+pandas+时间、日期以及时间序列处理方法

    先简单的了解下日期和时间数据类型及工具 python标准库包含于日期(date)和时间(time)数据的数据类型,datetime.time以及calendar模块会被经常用到. datetime以毫 ...

  6. mysql日期加一年时间_mysql日期怎么加一年

    mysql日期加一年的方法:日期增加一年,使用updata更新语句,代码为[UPDATE table SET date = DATE_ADD(date, INTERVAL 1 YEAR)]. mysq ...

  7. python诞生日期_Python中的时间与日期

    本文简要介绍datetime,time模块的简要用法. datetime模块 datetime模块主要有四个主要的对象. date 处理年.月.日 time处理时.分.秒.微秒 datetime处理日 ...

  8. linux判断季末日期,C#根据当前时间确定日期范围(本周、本月、本季度、本年度)...

    在C#的开发当中经常遇到关于一个日期时间"+/-"一段时间的问题,下面是一些相关总结,供大家参考. DateTime dt = DateTime.Now; //当前时间 DateT ...

  9. JavaScript 时间与日期处理实战:你肯定被坑过

    本部分的知识图谱请参考编程语言知识图谱-时间与日期. 本文JavaScript 时间与日期处理实战:你肯定被坑过从属于笔者的Web 前端入门与最佳实践中 JavaScript 入门与最佳实践系列文章. ...

最新文章

  1. IBM全面拥抱Linux,为“认知商业”提供POWER
  2. 如何查看和停止Linux启动的服务
  3. openssl 自建CA签发证书 网站https的ssl通信
  4. 信息系统项目管理师为什么不建议自学
  5. 【DevOps】为什么我们永远疲于奔命?
  6. 【HTML基础】表格和表单
  7. Python 异步 IO 、协程、asyncio、async/await、aiohttp
  8. C++常用字符串分割方法
  9. 关于体育的python毕业设计_Python实例13:体育竞技分析
  10. com学习笔记(2)基本的com接口-QueryInterface的实现
  11. 轻松搞定JSONP跨域请求
  12. 字符串_KMP算法(求next[]模板 hdu 1711)
  13. Python基础_字符串的格式化
  14. 14. YAML(1)
  15. Android TIF框架
  16. 请问smartadmin中如何只用其treeview 组件?
  17. Magisk root 原理分析之一 :Magisk Andorid Root 流程
  18. 浅析RFID固定资产管理系统应用背景与技术优势
  19. 【系】微信小程序云开发实战坚果商城-云开发之分类数据实现
  20. 小猿日记 - 程序猿的日常日记(2)

热门文章

  1. 外卖跑腿APP系统软件开发市场前景如何?
  2. SharePoint 2013 BI--Power Query for SharePoint
  3. 2016年重大事件记录
  4. Ubuntu 22.04 LTS下Miniconda安装+换源(踩坑向)
  5. 活着,本身就是最美的事 唯美生活生命感悟美文
  6. angular $q promise详解
  7. 工地安全帽佩戴检测yolov5
  8. v3s kernel-3.4 sys_config.fex 以及调试ov5640 mipi camera
  9. 《数据结构与算法》——线性表顺序存储结构的插入与删除
  10. CSDN收藏的资料位置,怎么切换编辑器,怎么转载博客