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的更多相关文章

  1. Java Calendar,Date,DateFormat,TimeZone,Locale等时间相关内容的认知和使用(1) Calendar

    Java 操作日期/时间,往往会涉及到Calendar,Date,DateFormat这些类. 最近决定把这些内容系统的整理一下,这样以后使用的时候,会更得心应手.本章的内容是主要讲解“Java时间框 ...

  2. Java Calendar,Date,DateFormat,TimeZone,Locale等时间相关内容的认知和使用(2) 自己封装的Calendar接口

    本章主要是收藏一些常用的类和接口,包括:万年历(农历.阳历节日.阴历节日).自定义的Calendar接口. 万年历 源码如下(ChineseCalendar.java): package com.vi ...

  3. Java Calendar,Date,DateFormat,TimeZone,Locale等时间相关内容的认知和使用(3) Date

    本章主要介绍Date类,并通过示例学习如何使用它.最后,讲解一下UTC.GMT和时区的关系. Date 介绍 Date 定义 public class Date implements java.io. ...

  4. Java Calendar,Date,DateFormat,TimeZone,Locale等时间相关内容的认知和使用(4) DateFormat

    本章主要介绍DateFormat. DateFormat 介绍 DateFormat 的作用是 格式化并解析“日期/时间”.实际上,它是Date的格式化工具,它能帮助我们格式化Date,进而将Date ...

  5. Java Calendar,Date,DateFormat,TimeZone,Locale等时间相关内容的认知和使用(5) SimpleDateFormat

    本章介绍SimpleDateFormat. SimpleDateFormat 介绍 SimpleDateFormat 是一个格式化Date 以及 解析日期字符串 的工具.它的最常用途是,能够按照指定的 ...

  6. Java Calendar,Date,DateFormat,TimeZone,Locale等时间相关内容的认知和使用(6) Locale

    本章介绍Locale. 1 Locale 介绍 Locale 表示地区.每一个Locale对象都代表了一个特定的地理.政治和文化地区. 在操作 Date, Calendar等表示日期/时间的对象时,经 ...

  7. Java Calendar,Date,DateFormat,TimeZone,Locale等时间相关内容的认知和使用(7) TimeZone

    本章介绍TimeZone. TimeZone 简介 TimeZone 表示时区偏移量,也可以计算夏令时.在操作 Date, Calendar等表示日期/时间的对象时,经常会用到TimeZone:因为不 ...

  8. Java 14 可能带来什么新特性?

    JDK/Java 13 在一个月前已经发布,该版本带来了 5 大新特性,笔者观察到其中的 Text Blocks(文本块)特性似乎被讨论最多. 文本块特性与常见的 Python "" ...

  9. Java 14 都要来了,为什么还有这么多人固守Java8?

    作者:刘欣 从Java 9开始,Java版本的发布就让人眼花缭乱了. 每隔6个月,都会冒出一个新版本出来,Java 10 , Java 11, Java 12, Java 13, 到2020年3月份, ...

随机推荐

  1. windows临界区

    临界区: 临界区是一种轻量级机制,在某一时间内只允许一个线程执行某个给定代码段.通常在多线程修改全局数据时会使用临界区.事件.信号量也用于多线程同步,但临界区与它们不同,并不总是执行向内核模式的切换, ...

  2. Design Patterns (简单工厂模式)

    文章很长很精彩,如是初学请耐心观看.(大神请绕道!) 简单工厂模式: 1.创建型模式 2.简单工厂模式概述 3.简单工厂模式的结构与实现 4.简单工厂模式的应用实例 5.创建对象与使用对象 6.简单工 ...

  3. http服务&ajax编程

    http服务&ajax编程 1.服务器 前言:通俗的讲,能够提供某种服务的机器(计算机)称为服务器 1.1.服务器类型 按照不同的划分标准,服务可划分为以下类型: 按服务类型可分为:文件服务器 ...

  4. 优化ABAP性能(摘录)

    1.使用where语句不推荐Select * from zflight.Check : zflight-airln = ‘LF’ and zflight-fligh = ‘BW222’.Endsele ...

  5. Microsoft Dynamics CRM 2013 安装过程 图解

    在安装前,先持一下SQL配置管理,将相关的服务打开.(由于在虚拟机里,许多服务需要时才会打开,像Reporting Services需要处理报表时才打开) 注:Analysis Services 登录 ...

  6. 中国象棋引擎的C#源代码

    以前写的中国象棋引擎的C#源程序,可在VS2010中编译运行,由于个人精力有限,难以完成后续的开发工作,如果谁感兴趣,请关注微信公众号(“申龙斌的程序人生”,ID:slbGTD),发送后台消息“象棋引 ...

  7. 让eclipse启动时拥有jre

    让eclipse 拥有jre,这样才能启动 eclipse/eclipse.ini 首行加入 -vm /home/liujl/installer/jdk/bin/java

  8. fragment 切换

    1.Fragment的添加方式 FragmentTransaction ft = getFragmentManager().beginTransaction(); ft.hide ft.show ft ...

  9. animation of android (4)

    TimeAnimator: 与objectAminator不同,它反馈的时间间隔.也就是说TimeAnimator不产生实际的动画效果,他反馈的时间间隔和时间值. 而你并不关心 interpolate ...

  10. 一步步学敏捷开发:5. Scrum的4种会议

    在Scrum会议中包括:计划会议.每日站会.评审会议和回顾会议. 1.Sprint计划会(Sprint Planning) 在Scrum中,Sprint计划会议有两部分:1. 决定需要完成哪些工作?2 ...