Java 使用SimpleDateFormat格式化日期,这里只涉及最实用的方面。

用途

用于格式化日期和解析日期类型字符串。

formatting (date -> text), parsing (text -> date)

构造函数

SimpleDateFormat(String pattern)

Constructs a
 
SimpleDateFormat
 using the given pattern and the default date format symbols for the default locale.

日期和时间模式(pattern)

Letter Date or Time Component Presentation Examples
G Era designator Text AD
y Year Year 199696
Y Week year Year 200909
M Month in year Month JulyJul07
w Week in year Number 27
W Week in month Number 2
D Day in year Number 189
d Day in month Number 10
F Day of week in month Number 2
E Day name in week Text TuesdayTue
u Day number of week (1 = Monday, ..., 7 = Sunday) Number 1
a Am/pm marker Text PM
H Hour in day (0-23) Number 0
k Hour in day (1-24) Number 24
K Hour in am/pm (0-11) Number 0
h Hour in am/pm (1-12) Number 12
m Minute in hour Number 30
s Second in minute Number 55
S Millisecond Number 978
z Time zone General time zone Pacific Standard TimePSTGMT-08:00
Z Time zone RFC 822 time zone -0800
X Time zone ISO 8601 time zone -08-0800-08:00

常用模式

Date and Time Pattern Result
"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
"yyyy-MM-dd'T'HH:mm:ss.SSSXXX" 2001-07-04T12:08:56.235-07:00
"YYYY-'W'ww-u"

2001-W27-3

"YYYY-MM-dd" 2018-01-24

举例

package com.dylan.datatype;

import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date; /**
* @author xusucheng
* @create 2018-01-24
**/
public class SimpleDateFormatTest {
public static void main(String[] args) {
//create date format
SimpleDateFormat sdf1 = new SimpleDateFormat("yyyy-MM-dd");
SimpleDateFormat sdf2 = new SimpleDateFormat("yyyy/M/d"); //convert date to specific format string
Date date = new Date();
System.out.println(sdf1.format(date)); //convert string to date
String dateStr="2018/1/24";
try {
System.out.println(sdf2.parse(dateStr));
} catch (ParseException e) {
e.printStackTrace();
}
}
}

输出:

2018-01-24
Wed Jan 24 00:00:00 CST 2018

注意:

SimpleDateFormat是非线程安全的,建议为每一个线程单独创建格式化实例。

Java 使用SimpleDateFormat格式化日期的更多相关文章

  1. java 使用simpleDateFormat格式化日期 时间.RP

    首先了解一下格式化日志的所有表示. 时间日期标识符: yyyy:年 MM:月 dd:日 hh:1~12小时制(1-12) HH:24小时制(0-23) mm:分 ss:秒 S:毫秒 E:星期几 D:一 ...

  2. java使用simpleDateFormat格式化日期 时间

    时间日期标识符: yyyy:年 MM:月 dd:日 hh:1~12小时制(1-12) HH:24小时制(0-23) mm:分 ss:秒 S:毫秒 E:星期几 D:一年中的第几天 F:一月中的第几个星期 ...

  3. Java进阶(二十八)SimpleDateFormat格式化日期问题

    SimpleDateFormat格式化日期问题 前言 发现一个问题,经过以下语句处理后,发现12:27:45转换后成为了00:27:45. DateFormat df = null; if(DATE1 ...

  4. SimpleDateFormat格式化日期

    SimpleDateFormat格式化日期 import java.text.SimpleDateFormat;import java.util.Date;public class test { pu ...

  5. SimpleDateFormat格式化日期以及日期的相关操作

    一.Java中的日期概述   日期在Java中是一块非常复杂的内容,对于一个日期在不同的语言国别环境中,日期的国际化,日期和时间之间的转换,日期的加减运算,日期的展示格式都是非常复杂的问题.   在J ...

  6. Java工具类-格式化日期

    package common; import java.text.SimpleDateFormat; import java.util.Date; import java.util.Locale; p ...

  7. java,JsonFormat格式化日期问题

    今天使用以下代码格式日期字段 @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") private Date createTime; 发现这样渲 ...

  8. 【java】Date与String之间的转换及Calendar类:java.text.SimpleDateFormat、public Date parse(String source) throws ParseException和public final String format(Date date)

    package 日期日历类; import java.text.ParseException; import java.text.SimpleDateFormat; import java.util. ...

  9. Java SE基础部分——常用类库之SimpleDateFormat(日期格式化)

    取得当前日期,并按照不同日期格式化输入.代码如下: // 20160618 SimpleDateFomat类的使用 日期格式化 练习 package MyPackage; //自己定义的包 impor ...

  10. 详解Java中格式化日期的DateFormat与SimpleDateFormat类

    DateFormat其本身是一个抽象类,SimpleDateFormat 类是DateFormat类的子类,一般情况下来讲DateFormat类很少会直接使用,而都使用SimpleDateFormat ...

随机推荐

  1. [转帖]京东大佬细说:Nginx反向代理时保持长连接,看完直呼"学到了!"

    https://mp.weixin.qq.com/s?__biz=MzU1MzE2NzIzMg==&mid=2247488405&idx=1&sn=7081ff4e0ac1de ...

  2. [转帖]实战演练 | Navicat 数据生成功能

    https://zhuanlan.zhihu.com/p/631823381 数据生成的目的是依据某个数据模型,从原始数据通过计算得到目标系统所需要的符合该模型的数据.数据生成与数据模型是分不开的,数 ...

  3. minio性能测试

    minio性能测试 minio的使用 前期使用了s3fs 但是想验证一下性能相关, 所以使用今天简单验证了一下, 其实也可以使用一下fio 但是s3fs 是对象存储 没有修改 只有上传, 所以感觉还是 ...

  4. [转帖]PostgreSQL 10.0 preview 功能增强 - 国际化功能增强,支持ICU(International Components for Unicode)

    https://developer.aliyun.com/article/72935 标签 PostgreSQL , 10.0 , International Components for Unico ...

  5. [转帖]THE OSWATCHER ANALYZER USER'S GUIDE

    oswbba THE OSWATCHER ANALYZER USER'S GUIDE Carl DavisMay 7, 2019 To see how to use this tool and it' ...

  6. pycharm提交代码到gitee

    1.在pycharm中下载gitee插件,打开pycharm进入settings页面,查看当前页面version control下是否 有gitee,要是没有点击plugins,在搜索框中搜索gite ...

  7. echarts给每个柱状图配置不同的颜色

    <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title> ...

  8. export default 和 export 这两种方式导出的区别

    参考地址 https://blog.csdn.net/sleepwalker_1992/article/details/81461543 使用export向外暴露的成员,只能使用{ }的形式来接收,这 ...

  9. 清空elementui让计数器input-number的默认值

    <el-form-item label="考试时长:" prop="testTimeLong"> <el-input-number style ...

  10. 【发现一个问题】使用 fastcgo 导致额外的 `runtime._System` 调用的消耗

    作者:张富春(ahfuzhang),转载时请注明作者和引用链接,谢谢! cnblogs博客 zhihu Github 公众号:一本正经的瞎扯 为了避免 cgo 调用浪费太多资源,因此使用了 fastc ...