java中Date与DateFormat的格式输出

一、DateFormat    
java.text.DateFormat 

使用 getDateInstance 来获取该国家/地区的标准日期格式。另外还提供了一些其他静态工厂方法。使用 getTimeInstance 可获取该国家/地区的时间格式。使用 getDateTimeInstance 可获取日期和时间格式。可以将不同选项传入这些工厂方法,以控制结果的长度(从 SHORT 到 MEDIUM 到 LONG 再到 FULL)。确切的结果取决于语言环境,但是通常:

  • SHORT 完全为数字,如 12.13.52 或 3:30pm
  • MEDIUM 较长,如 Jan 12, 1952
  • LONG 更长,如 January 12, 1952 或 3:30:32pm
  • FULL 是完全指定,如 Tuesday、April 12、1952 AD 或 3:30:42pm PST。

如果愿意,还可以在格式上设置时区。如果想对格式化或解析施加更多的控制(或者给予用户更多的控制),可以尝试将从工厂方法所获取的 DateFormat 强制转换为 SimpleDateFormat。这适用于大多数国家/地区;只是要记住将其放入一个 try 代码块中,以防遇到特殊的格式。 

使用当地时区
Date date = new Date();
//日期格式,精确到日 2017-4-16
DateFormat df1 = DateFormat.getDateInstance();
System.out.println(df1.format(date));//可以精确到秒  2017-4-16 12:43:37
DateFormat df2 = DateFormat.getDateTimeInstance();
System.out.println(df2.format(date));//只显示出时时分秒 12:43:37
DateFormat df3 = DateFormat.getTimeInstance();
System.out.println(df3.format(date));//显示日期,周,上下午,时间(精确到秒)
//2017年4月16日 星期日 下午12时43分37秒 CST
DateFormat df4 = DateFormat.getDateTimeInstance(DateFormat.FULL, DateFormat.FULL);
System.out.println(df4.format(date));//显示日期,上下午,时间(精确到秒) 
//2017年4月16日 下午12时43分37秒
DateFormat df5 = DateFormat.getDateTimeInstance(DateFormat.LONG, DateFormat.LONG);
System.out.println(df5.format(date));//显示日期,上下午,时间(精确到秒) 
//2017年4月16日 下午12时43分37秒
DateFormat df5_1 = DateFormat.getDateTimeInstance(DateFormat.LONG, DateFormat.LONG, Locale.CHINA);
System.out.println(df5_1.format(date));
//显示日期,上下午,时间(精确到分) 17-4-16 下午12:43
DateFormat df6 = DateFormat.getDateTimeInstance(DateFormat.SHORT, DateFormat.SHORT);
System.out.println(df6.format(date));//显示日期,时间(精确到秒) 2017-4-16 12:43:37 
DateFormat df7 = DateFormat.getDateTimeInstance(DateFormat.MEDIUM, DateFormat.MEDIUM);
System.out.println(df7.format(date));

二、 SimpleDateFormat

java.text.SimpleDateFormat

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

字母日期或时间元素表示示例
GEra 标志符TextAD
yYear1996; 96
M年中的月份MonthJuly; Jul; 07
w年中的周数Number27
W月份中的周数Number2
D年中的天数Number189
d月份中的天数Number10
F月份中的星期Number2
E星期中的天数TextTuesday; Tue
aAm/pm 标记TextPM
H一天中的小时数(0-23)Number0
k一天中的小时数(1-24)Number24
Kam/pm 中的小时数(0-11)Number0
ham/pm 中的小时数(1-12)Number12
m小时中的分钟数Number30
s分钟中的秒数Number55
S毫秒数Number978
z时区General time zonePacific Standard Time; PST; GMT-08:00
Z时区RFC 822 time zone-0800

 

实例参数

日期和时间模式结果
"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

 

代码结果

Date d = new Date();
/* h 1-12输出格式: 2017-04-16 01:01:22 */
DateFormat format1 = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
String s = format1.format(d);
System.out.println(s);
/* H 0-23输出格式:2017-04-16 13:01:22*/
DateFormat format2 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
s = format2.format(d);
System.out.println(s);/* K 0-11输出格式:2017-04-16 01:01:22 */
DateFormat format3 = new SimpleDateFormat("yyyy-MM-dd KK:mm:ss");
s = format3.format(d);
System.out.println(s);/* k 1-24输出格式: 2017-04-16 13:01:22 */
DateFormat format4 = new SimpleDateFormat("yyyy-MM-dd kk:mm:ss");
s = format4.format(d);
System.out.println(s);/* 输出格式: 20170416010122 */
DateFormat format5 = new SimpleDateFormat("yyyyMMddhhmmss");
s = format5.format(d);
System.out.println(s);

 

常用方法


parse

public Date parse(String texts)
解析字符串的文本,生成 Date

此方法试图解析文本。如果解析成功,并返回解析得到的日期。更新后的 pos 可以用来指示下次调用此方法的起始点。如果发生错误,并且返回 null。

 

指定者:
DateFormat 中的 parse
参数:
text - 应该解析其中一部分的 String
 
返回:
从字符串进行解析的 Date。如果发生错误,则返回 null。
抛出:
NullPointerException - 如果 text 为 null。
另请参见:
DateFormat.setLenient(boolean)

 


parse

public Date parse(String text,ParsePosition pos)
解析字符串的文本,生成 Date

此方法试图解析从 pos 给定的索引处开始的文本。如果解析成功,则将 pos 的索引更新为所用最后一个字符后面的索引(不必对直到字符串结尾的所有字符进行解析),并返回解析得到的日期。更新后的 pos 可以用来指示下次调用此方法的起始点。如果发生错误,则不更改 pos 的索引,并将 pos 的错误索引设置为发生错误处的字符索引,并且返回 null。

 

指定者:
DateFormat 中的 parse
参数:
text - 应该解析其中一部分的 String
pos - 具有以上所述的索引和错误索引信息的 ParsePosition 对象。
返回:
从字符串进行解析的 Date。如果发生错误,则返回 null。
抛出:
NullPointerException - 如果 textpos 为 null。
另请参见:
DateFormat.setLenient(boolean)

 


format

public final String format(Date date)
将一个 Date 格式化为日期/时间字符串。

 

参数:
date - 要格式化为时间字符串的时间值。
返回:
已格式化的时间字符串。

 

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

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

相关文章

二叉堆的操作总结(insert+deleteMin+increaseKey+decreaseKey+percolateDown+percolateUp)

【0】README 本文idea 均为原创, for source code, please visit https://github.com/pacosonTang/dataStructure-algorithmAnalysis/tree/master/chapter6/p140_binaryheap_conclusion 【1】insert操作 // Attention, the index of the heap starts from 1 void …

aws生态系统集成商_通过通用数据访问扩展AWS生态系统

aws生态系统集成商Amazon Web Services(AWS)可帮助组织托管和管理其数据流程,例如构建数据可视化和执行ETL任务。 在CData,我们可以轻松地将AWS Services与异构业务应用程序和分布式数据存储连接起来,以最终帮助企业对…

HTML.parser和正则解析,正则表达式+HTMLParser使用详.ppt

getText:/body getText: getText:/htmlgetText:除了前面3.2中输出的几个Tag,其余的Tag都在这里了。 3.4 XorFilter 把前面的AndFilter换成NotFilter测试代码: NodeFilter filterID new HasAttributeFilter( "id" );NodeFilter filterChild n…

FileDescriptor的作用

一、FileDescriptor 文件描述符类的实例用作与基础机器有关的某种结构的不透明句柄,该结构表示开放文件、开放套接字或者字节的另一个源或接收者。文件描述符的主要实际用途是创建一个包含该结构的 FileInputStream 或 FileOutputStream。 二、静态标准文件描述…

java流与文件——内存映射文件

【0】README 0.1) 本文描述转自 core java volume 2, 旨在理解 java流与文件——内存映射文件 的相关知识; 0.2)内存映射文件的目的是: 提高访问速度, 缓冲区Buffer; 0.3) 本文干…

java 函数式编程 示例_功能Java示例 第8部分–更多纯函数

java 函数式编程 示例这是第8部分,该系列的最后一部分称为“示例功能Java”。 我在本系列的每个部分中开发的示例是某种“提要处理程序”,用于处理文档。 在上一期文章中,我们已经使用Vavr库看到了一些模式匹配,并且还将故障也视…

html加css作品,我的影视作品,如何在博客园发布带有CSS样式的HTML

总结一下,我做过的视频:(顺便试试在博客园如何发HTML网页)发布网页总结:HTML可以正常发送,但最好将你要发布的html文件放在一个带有ID的div中,这样方便后期添加样式时通过ID添加,不会影响到网页中的其他布局…

FileInputStream

java.ioClass FileInputStream java.lang.Object java.io.InputStream java.io.FileInputStream 所有已实现的接口: Closeable public class FileInputStream extends InputStream FileInputStream 从文件系统中的某个文件中获得输入字节。哪些文件可用取决于主机环境。 Fil…

android console命令,我们可以通过两种方式进入Android的console: 1. 直接执行命令emulator -shell; 2....

Don’t use /usr 这样子编译出来的busybox才不会安装到你主机的/usr目录下。一定要选上。4 执行make编译源码. 如果编译过程中产生无法找到头文件的错误, 可指定交叉编译器用到的头文件所在路径. 如 $make -I./home/jo/tool/arm-2008q3/arm-none-linux-gnueabi/lib…

selenium 示例_Selenium测试中所需的功能和示例

selenium 示例所需功能是用于声明一组基本要求(例如浏览器,操作系统,浏览器版本等的组合)的类,以对Web应用程序执行自动跨浏览器测试。 当我们尝试通过Selenium自动化测试来自动化测试脚本时,我们需要考虑…

java流与文件——正则表达式

【0】README 0.1) 本文描述转自 core java volume 2, 旨在理解 java流与文件——正则表达式 的相关知识; 0.2) there are my original source code below, and for them , please visit https://github.com/pacosonTang/core-ja…

pandoc讲html转换为pdf,mac下利用Pandoc、LaTeX 转换markdown成html,pdf

环境所使用的插件有pandoc,tlmgr,fc-listcssbrew install pandoc由于mac ox 系统生成pdf 须要找到对应的编码集 全部还须要去下载LaTeX,进行安装html5使用tlmgr工具安装全部要的包先进行更新,若是提示所须要的字体没有找到安装gitsudo tlmgr update --se…

java程序连接kafka_Java的Kafka:构建安全,可扩展的消息传递应用程序

java程序连接kafka使用Okta的身份管理平台轻松部署您的应用程序 使用Okta的API在几分钟之内即可对任何应用程序中的用户进行身份验证,管理和保护。 今天尝试Okta。 当今的用户希望可以通过其计算机,手机,平板电脑或任何其他设备访问您的应用…

信息系html5论文,基于HTML5的智力游戏设计电子信息工程本科学生毕业论文.doc

基于HTML5的智力游戏设计电子信息工程本科学生毕业论文本科学生毕业论文(设计)题目(中文):基于HTML5的智力游戏设计(英文):Design of Intelligent Game Based on HTML5姓 名 xxx学 号 xxx院 (系) 电子与信息工程学院专业、年级 电子信息工程指导教师 xxx…

优先队列——左式堆

【0】README 0.1) 本文文字描述部分转自 数据结构与算法分析, 旨在理解 优先队列——左式堆 的基础知识; 0.2) 本文核心思路均为原创, 源代码部分借鉴 数据结构与算法分析 ; 0.3) for origin…

Class类中的getEnclosing*、getDeclared*与getDeclaringClass的区别

一、getEnclosing* 当前类在……中闭合Class<?>getEnclosingClass() 返回底层类的立即封闭类。 Constructor<?>getEnclosingConstructor() 如果该 Class 对象表示构造方法中的一个本地或匿名类&#xff0c;则返回 Constructor 对象&#xf…

java联接pg库_Java14:使用Java 14的新记录联接数据库表

java联接pg库您是否知道可以使用Java 14的预览记录功能将数据库表连接到Java Stream中&#xff1f; 阅读这篇简短的文章&#xff0c;并了解如何使用Speedment Stream ORM完成它。 我们将从如何设置您的项目开始。 建立 下载Java 14 。 转到Speedment Initializer并下载您的项目…

html5遍历集合数据,HTMLCollection集合能打印出来值,但是无法获取每一个值。

var imgs $("#pictureQueryTable img").prevObject[0].images;下图是上面这句打印出来的结果&#xff1a;console.log可以打印出来该集合的数据&#xff0c;但是无法获取该集合中的每一个值&#xff0c;打印该集合的length为0&#xff0c;所以也无法遍历该集合进行操…

优先队列——斜堆

【0】README 0.1&#xff09;本文部分内容转自  http://www.cnblogs.com/skywang12345/p/3638493.html&#xff0c; 旨在理解 优先队列——斜堆 的基础知识&#xff1b; 0.2&#xff09; for original source code , please visit https://github.com/pacosonTang/dataStruc…

Class的getResource与ClassLoader的getResource路径/问题

一、Class的getResource(String path)&#xff1a;URL 1、path 不以’/开头时&#xff0c;默认是从此类所在的包下取资源&#xff1b; 2、path 以’/开头时&#xff0c;则是从ClassPath根下获取&#xff1b; System.out.println(Test.class.getResource("")); Syste…