java 14 - 8 DateFormat
A、有时候在网站注册账号时,会有日期选项,下面会有一个小型的日历可供选择。这个日期其实是个String类,
选择了日期之后,这个String类会通过程序,转换为Date类,再存入数据库中。
B、反之,这个小型日历的形成,也是从数据库中提取出Date类,再通过程序转换为String类显示出来。
而A中的过程,其实就是 String -- Date(解析)
public Date parse(String source)
B中的过程,其实就是 Date -- String(格式化)
public final String format(Date date)
DateForamt:可以进行日期和字符串的格式化和解析,但是由于是抽象类,所以使用具体子类 SimpleDateFormat。
SimpleDateFormat的构造方法:
SimpleDateFormat():默认模式 (就是年月日时分秒挤在一起显示)
SimpleDateFormat(String pattern):给定的模式 (自己提供显示模式)
在把一个字符串解析为日期的时候,请注意格式必须和给定的字符串格式匹配
这个模式字符串该如何写呢?
通过查看API,我们就找到了对应的模式
年 y
月 M
日 d
时 H
分 m
秒 s
import java.sql.Date;
import java.text.ParseException;
import java.text.SimpleDateFormat;
public class DateFormat { public static void main(String[] args) throws ParseException {
//先实验下格式化的过程,显示当前的时间 //首先提取现在的时间
Date d = new Date(System.currentTimeMillis()); //格式化这个时间,首先用默认模式
SimpleDateFormat sdf = new SimpleDateFormat(); //public StringBuffer format(Date date,StringBuffer toAppendTo,FieldPosition pos)
//将给定的 Date 格式化为日期/时间字符串,并将结果添加到给定的 StringBuffer。
String s = sdf.format(d);
//输出字符串
System.out.println(s);//16-9-19 下午6:19 //格式化时间,用自己设定的模式
SimpleDateFormat sdf1 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); //将给定的 Date 格式化为日期/时间字符串,并将结果添加到给定的 StringBuffer。
String s1 = sdf1.format(d);
//输出字符串
System.out.println(s1); //2016-09-19 18:21:25 //实验下解析的过程。注意:在把一个字符串解析为日期的时候,请注意格式必须和给定的字符串格式匹配
/*
//先设定一个时间字符串,符合模式的
String t = "2016-09-19 18:21:25"; //再设定模式
SimpleDateFormat sdf2 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); //String - Date 进行解析 public Date parse(String source);
Date d1 = (Date) sdf2.parse(t);jdk1.8时,这句不能运行。
下面的是从教程中拉过来的,导入后能运行。
System.out.println(d1); */ //String -- Date
String str = "2016-08-08 12:12:12";
//在把一个字符串解析为日期的时候,请注意格式必须和给定的字符串格式匹配
SimpleDateFormat sdf2 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
//String - Date 进行解析 public Date parse(String source);
Date dd = sdf2.parse(str);
System.out.println(dd);
} }

java 14 - 8 DateFormat的更多相关文章
- Java Calendar,Date,DateFormat,TimeZone,Locale等时间相关内容的认知和使用(1) Calendar
Java 操作日期/时间,往往会涉及到Calendar,Date,DateFormat这些类. 最近决定把这些内容系统的整理一下,这样以后使用的时候,会更得心应手.本章的内容是主要讲解“Java时间框 ...
- Java Calendar,Date,DateFormat,TimeZone,Locale等时间相关内容的认知和使用(2) 自己封装的Calendar接口
本章主要是收藏一些常用的类和接口,包括:万年历(农历.阳历节日.阴历节日).自定义的Calendar接口. 万年历 源码如下(ChineseCalendar.java): package com.vi ...
- Java Calendar,Date,DateFormat,TimeZone,Locale等时间相关内容的认知和使用(3) Date
本章主要介绍Date类,并通过示例学习如何使用它.最后,讲解一下UTC.GMT和时区的关系. Date 介绍 Date 定义 public class Date implements java.io. ...
- Java Calendar,Date,DateFormat,TimeZone,Locale等时间相关内容的认知和使用(4) DateFormat
本章主要介绍DateFormat. DateFormat 介绍 DateFormat 的作用是 格式化并解析“日期/时间”.实际上,它是Date的格式化工具,它能帮助我们格式化Date,进而将Date ...
- Java Calendar,Date,DateFormat,TimeZone,Locale等时间相关内容的认知和使用(5) SimpleDateFormat
本章介绍SimpleDateFormat. SimpleDateFormat 介绍 SimpleDateFormat 是一个格式化Date 以及 解析日期字符串 的工具.它的最常用途是,能够按照指定的 ...
- Java Calendar,Date,DateFormat,TimeZone,Locale等时间相关内容的认知和使用(6) Locale
本章介绍Locale. 1 Locale 介绍 Locale 表示地区.每一个Locale对象都代表了一个特定的地理.政治和文化地区. 在操作 Date, Calendar等表示日期/时间的对象时,经 ...
- Java Calendar,Date,DateFormat,TimeZone,Locale等时间相关内容的认知和使用(7) TimeZone
本章介绍TimeZone. TimeZone 简介 TimeZone 表示时区偏移量,也可以计算夏令时.在操作 Date, Calendar等表示日期/时间的对象时,经常会用到TimeZone:因为不 ...
- Java 14 可能带来什么新特性?
JDK/Java 13 在一个月前已经发布,该版本带来了 5 大新特性,笔者观察到其中的 Text Blocks(文本块)特性似乎被讨论最多. 文本块特性与常见的 Python "" ...
- Java 14 都要来了,为什么还有这么多人固守Java8?
作者:刘欣 从Java 9开始,Java版本的发布就让人眼花缭乱了. 每隔6个月,都会冒出一个新版本出来,Java 10 , Java 11, Java 12, Java 13, 到2020年3月份, ...
随机推荐
- Rendering Problems: No Android SDK found. Please configure an Android SDK. 怎解决?
Rendering Problems No Android SDK found. Please configure an Android SDK.
- .NET WinForm画树叶小程序
看了一片文章(http://keleyi.com/a/bjac/nurox416.htm),是使用分型画树叶,代码是Java的,因为Java很久没弄了,改用C#实现,下载地址: 画树叶小程序下载 核心 ...
- SAP RFC通信模式
在网络技术中,数据通信可以大致划分为两种基本模式:同步通信和异步通信. 其本义是:异步通信时,通信双方时钟允许存在一定误差:同步通信时,双方时钟的允许误差较小.在SAP的系统间的通信过程中,也借用术语 ...
- 破解入门【OllyDebug爆破程序】
逆向破解这块我也是个刚起步的小菜,入门都还算不上吧,看了点基础教程,先动手练习一下增加点兴趣.嘿嘿 工具: peid //查壳工具 OllyDebug //反汇编.动态调试工具 ...
- SharePoint 2013 - User
1. 在SharePoint 2010中,可以搜索出NT AUTHORITY\authenticated users,但在SharePoint 2013中,不能搜索出,需要手动写入全名后进行验证: 2 ...
- Android 在内部存储读写文件
文件读写操作* Ram内存:运行内存,相当于电脑的内存* Rom内存:内部存储空间,相当于电脑的硬盘* sd卡:外部存储空间,相当于电脑的移动硬盘在内部存储空间中读写文件>小案例:用户输入账号密 ...
- android开发之——获取相册图片和路径
Android开发获取相册图片的方式网上有很多种,这里说一个Android4.4后的方法,因为版本越高,一些老的api就会被弃用,新的api和老的api不兼容,导致出现很多问题. 比如:managed ...
- myeclipse10安装findbugs
尝试过myeclipse10环境下,在线安装findbugs,插件包是能下载到指定目录下,可是由于版本问题,findbugs插件是不能使用的.所以才有了下面的离线安装 离线安装findbugs 操作系 ...
- bsearch
在java中为了避免 low+high溢出,可以用无符号右移:正数高位补0,负数高位补1 int mid = (low + high) >>> 1; 如果是在c++中,那么需要先转换 ...
- android 基础控件(EditView、SeekBar等)的属性及使用方法
android提供了大量的UI控件,本文将介绍TextView.ImageView.Button.EditView.ProgressBar.SeekBar.ScrollView.WebView ...