java.text.SimpleDateFormat

  SimpleDateFormat类是用于把字符串解析成日期时间和把日期时间格式化成字符串的工具类。该类主要和java.util.Date类配合使用,常用的使用实例如下:

SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd");
String dateStr = format.format(new Date());
Date date = format.parse("2017-03-21");

可以看到,传给SimpleDateFormat构造函数的字符串参数是一个模式串,用来表示日期时间的字符串表示形式,该模式串同时用于解析字符串和格式化字符串。例子中使用的模式串是"yyyy-MM-dd",该模式串中的"yyyy"代表使用4位数字表达年份,"MM"代表使用2位数字表达月份,"dd"代表使用2位数字表达月份。模式串中具体可以使用的所有标准字母,可以参看JavaDoc。我们我列举一些常见的模式串如下:

yyyy-MM-dd (2017-03-21)
dd-MM-yyyy (21-03-2017)
yyyy-MM-dd HH:mm:ss (2017-03-21 19:09:34)
HH:mm:ss.SSS (19:09:34.342)

  SimpleDateFormat对象内部包含有本地化(Locale)对象。包含有不同的Locale对象的SimpleDateFormat对象可以按照该Locale对象的特点解析对应的字符串对象,同时在格式化字符串的时候也会生成对应的字符串格式。

DateFormatSymbols

  DateFormatSymbols类用于定制SimpleDateFormat格式化字符串时的输出。具体的使用方法如下所示:

Locale locale = new Locale("en, "UK");
DateFormatSymbols dfss = new DateFormatSymbols(locale);
dfss.setWeekdays(new String[]{
"Unused",
"Sad Sunday",
"Manic Monday",
"Thriving Tuesday",
"Wet Wednesday",
"Total Thursday",
"Fat Friday",
"Super Saturday"
});
String pattern = "EEEEE MMMMM yyyy";
SimpleDateFormat sdf = new SimpleDateFormat(pattern, dfss);
String date = sdf.format(new Date());
System.out.println(date);

上面这个示例的输出可能是如下所示:

Super Saturday November 2012

实际上,DateFormatSymbols类具有很多的设置模式串的方法。简单举例如下:

dateFormatSymbols.setWeekdays();
dateFormatSysbols.setAmPmStrings();
dateFormatSysbols.setZoneStrings();

关于此类的更多细节,请参看JavaDoc或者源码。

本系列文档会在本人的微信公众号发布,欢迎大家扫码关注。

                

JDK中日期和时间的几个常用类浅析(三)的更多相关文章

  1. JDK中日期和时间的几个常用类浅析(二)

    java.util.Calendar   JDK中的java.util.Calendar类主要是用来处理日期和时间相关的算法运算.当你需要做一些关于日期和时间的高级算数操作时,此类可能就是你的最好选择 ...

  2. JDK中日期和时间的几个常用类浅析(四)

    java.time.Instant   java.time.Instant类对应的是时间线上的一个时间点.该类通过保存着从格林威治的起始时间(1970年一月一日零点零分)开始计算所经过的纳妙数来表示时 ...

  3. JDK中日期和时间的几个常用类浅析(五)

    LocalDateTime   LocalDateTime是JDK8中才引入的类,用来表示不包含时区信息的本地日期和时间.我们可以把LocalDateTime看作是LocalDate和LocalTim ...

  4. Python中日期和时间格式化输出的方法

    本文转自:https://www.jb51.net/article/62518.htm 本文实例总结了python中日期和时间格式化输出的方法.分享给大家供大家参考.具体分析如下: python格式化 ...

  5. 5 个关于 API 中日期和时间设计规则

    规则 #1 使用ISO-8601格式作为你的日期格式 ISO 8601 解决了很多问题,包括: 自然排序 - 简单和优雅,免去多余的工作即可实现排序 时区偏移 - 代表用户的地点和时区在日益增长的全球 ...

  6. PHPExcel对于Excel中日期和时间类型的处理

    PHPExcel是一款优秀的处理Excel文件读写的开源PHP Library,能够给我们提供强大的Excel读写能力,本文针对Excel处理过程中关于日期和时间类型的处理进行深入的讨论.PHPExc ...

  7. SqlServer中日期和时间数据类型及函数 【转】

    来源:http://blog.csdn.net/royalwzy/article/details/6446075 日期和时间数据类型 下表列出了 Transact-SQL 的日期和时间数据类型. 数据 ...

  8. JAVA中日期和时间的格式化选项

    一.使用printf方法 import java.util.Date; import java.util.Scanner; public class Test { public static void ...

  9. Oracle中日期和时间类函数

    首先,在oracle中如何表示日期 操作日期时,应使用to_date('date','dateType')函数得到date类型,其中date为任意格式的日期,dateType指定其格式,如to_dat ...

随机推荐

  1. 使用express.js框架一步步实现基本应用以及构建可扩展的web应用

    最近过年在家有点懈怠,但是自己也不断在学习新的前端技术,在家琢磨了express.js的web框架. 框架的作用就是提高开发效率,快速产出结果.即使不使用框架,我们也会在开发过程中逐渐形成构成框架. ...

  2. std::list 源代码解析

    首先声明,下面的讲解都是针对GCC2.9,std::alloc 通过下面的源代码大家可以看到list类的内部成员是一个node,而他的类型是linktype,前面的typedef里面有介绍是一个指针, ...

  3. WKWebView的使用与JS交互详细解读

    前言: WKWebView 这是在iOS8.0之后增加的一个比UIWebView更加完善和强大的控件!看网上关于它的博客也是有许多的了,从各个方面总结一下这个WKWebView看网上说它主要是为了和J ...

  4. 学习笔记--jQuery基础

    学习笔记也算总结知识点,有些示例可能没有具体到元素,直接给出的语法.大家有基本理解在看可能会好些. jQuery使用前提,需要安装jQuery库 jQuery 库是一个 JavaScript 文件,您 ...

  5. Java语言基本语法(一)————关键字&标识符(Java语言标识符命名规范&Java语言的包名、类名、接口名、变量名、函数名、常量名命名规则 )

    一.关键字 关键字的定义和特点 定义:被Java语言赋予特殊含义,用做专门用途的字符串(单词). 特点:关键字中所有字母均为小写 下面列举一些常用的关键字. 用于定义数据类型的关键字:byte.sho ...

  6. hibernate注解的简单应用

    注解代替了我们用的*.hbm.xml文件.简少了我们的代码量:应用简单. @Override 用途:重写父类的同名方法 单元测试注解 @Test 用途:用于测试 @Before 用途:单测方法走之前执 ...

  7. html5橡皮檫特效

    体验效果:http://keleyi.com/keleyi/phtml/html5/32.htm 效果描述: 有点像刮刮卡一样,在移动设备上,把某张图片刮掉显示出另一张图片.效果图如下: 这种刮图的效 ...

  8. Java基于文件的对象存储

    工作中经常需要处理对象的处理,有的时候还需要将对象保存到文件中做持久化. 特别是当不能使用数据库的时候就特别需要一个简单的对象集合的增删改查操作, 于是就有了下面这个文件DB的工具类 package ...

  9. libviso中的姿态解算【转载】

    这篇关于libviso的文章,本人已投稿在泡泡机器人微信公众号中,放到这里,作学习笔记用. libviso一直以来被称为在视觉里程计(VO)中的老牌开源算法.它通过corner,chessboard两 ...

  10. Linux TCP连接数修改

    一.           文件数限制修改 (1)   vi /etc/security/limits.conf *  soft nofile 10240    *  hard nofile 10240 ...