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. redis的删除库应用(linux)

    1.首先从linux进入redis的安装目录下 2.用redis-cli在Shell命令行下启动Redis客户端工具. 3.select 库名 进入到库下 4.flushdb 刷新当前库 redis的 ...

  2. iOS Touch ID 身份认证

    iOS Touch ID 身份认证 iOS 8 及以后录了指纹的设备可以使用 touch ID 进行身份认证,指纹符合录入的指纹才能认证成功. 步骤 导入 LocalAuthentication 框架 ...

  3. 做一个项目前搭建一个tabBar(一)框架

    前言 通常做一个项目前,不算开始讨论需求,分析产品等等,一开始会给我们搭建一个框架,今天简单说一下搭建框架. github网址:https://github.com/Moonths/iWatch.gi ...

  4. Vue.js 系列教程 4:Vuex

    这是关于 JavaScript 框架 Vue.js 五个教程的第四部分.在这一部分,我们会学习使用 Vuex 进行状态管理. 这不是一个完整的指南,而是基础知识的概述,所以你可以了解 Vue.js 以 ...

  5. Windows 7下解决: java.net.SocketException: No buffer space available (maximum connections reached?)

    查了一大堆网上的资料全都没用,Google得知,是Windows 7 的socket泄漏 : https://supportkb.riverbed.com/support/index?page=con ...

  6. 微信公众号平台接口开发:基础支持,获取access_token

    新建Asp.net MVC 4.0项目 WeChatSubscript是项目UI层 WeChatTools是封装操作访问公众号接口的一些方法类库 获取AccssToken 我们要的得到AccessTo ...

  7. Smarty3配置及入门语法

    一.Smarty3配置 下载Smarty文件 在Smarty的官方网站下载Smarty文件,解压下载到的Smarty文件,Smarty的库文件就在libs文件夹中. 我使用的PHP调试环境的程序集成包 ...

  8. Google addword 策略

    https://support.google.com/adwords/answer/1704392?hl=zh-Hans&authuser=0 顾客会用自己的思路去解决生意上的问题,想要拥有自 ...

  9. 读书笔记 effective c++ Item 10 让赋值运算符返回指向*this的引用

    一个关于赋值的有趣的事情是你可以将它们链在一起: int x, y, z; x = y = z = ; // chain of assignments 同样有趣的是赋值采用右结合律,所以上面的赋值链被 ...

  10. 【2017-02-23】switch...case...和for循环

    1.代码简化折叠: #region 标题 ... ... #endregion 一.switch...case... 1.格式 switch(变量){ case 值:代码段;break; case 值 ...