Java Date与String的相互转换详解

 更新时间:2017年02月21日 08:46:43   投稿:lqh  
这篇文章主要介绍了Java Date与String的相互转换详解的相关资料,需要的朋友可以参考下

Java Date与String的相互转换详解

前言:

我们在注册网站的时候,往往需要填写个人信息,如姓名,年龄,出生日期等,在页面上的出生日期的值传递到后台的时候是一个字符串,而我们存入数据库的时候确需要一个日期类型,反过来,在页面上显示的时候,需要从数据库获取出生日期,此时该类型为日期类型,然后需要将该日期类型转为字符串显示在页面上,Java的API中为我们提供了日期与字符串相互转运的类DateForamt。DateForamt是一个抽象类,所以平时使用的是它的子类SimpleDateFormat。SimpleDateFormat有4个构造函数,最经常用到是第二个。

构造函数中pattern为时间模式,具体有什么模式,API中有说明,如下

1、日期转字符串(格式化)

package com.test.dateFormat;

import java.text.SimpleDateFormat;
import java.util.Date;

import org.junit.Test;

public class Date2String {
  @Test
  public void test() {
    Date date = new Date();
    SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
    System.out.println(sdf.format(date));
    sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
    System.out.println(sdf.format(date));
    sdf = new SimpleDateFormat("yyyy年MM月dd日 HH:mm:ss");
    System.out.println(sdf.format(date));
  }
}

2016-10-24
2 2016-10-24 21:59:06
3 2016年10月24日 21:59:06

2、字符串转日期(解析)

package com.test.dateFormat;

import java.text.ParseException;
import java.text.SimpleDateFormat;

import org.junit.Test;

public class String2Date {
  @Test
  public void test() throws ParseException {
    String string = "2016-10-24 21:59:06";
    SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
    System.out.println(sdf.parse(string));
  }
}

Mon Oct 24 21:59:06 CST 2016

在字符串转日期操作时,需要注意给定的模式必须和给定的字符串格式匹配,否则会抛出java.text.ParseException异常,例如下面这个就是错误的,字符串中并没有给出时分秒,那么SimpleDateFormat当然无法给你凭空解析出时分秒的值来

package com.test.dateFormat;

import java.text.ParseException;
import java.text.SimpleDateFormat;

import org.junit.Test;

public class String2Date {
  @Test
  public void test() throws ParseException {
    String string = "2016-10-24";
    SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
    System.out.println(sdf.parse(string));
  }
}

不过,给定的模式比字符串少则可以

package com.test.dateFormat;

import java.text.ParseException;
import java.text.SimpleDateFormat;

import org.junit.Test;

public class String2Date {
  @Test
  public void test() throws ParseException {
    String string = "2016-10-24 21:59:06";
    SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
    System.out.println(sdf.parse(string));
  }
}

Mon Oct 24 00:00:00 CST 2016

可以看出时分秒都是0,没有被解析,这是可以的。

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

相关文章

  • Spring RestTemplate基本使用介绍

    Spring RestTemplate基本使用介绍

    这篇文章主要介绍了Spring RestTemplate基本使用介绍,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-03-03
  • PowerJobAutoConfiguration自动配置源码流程解析

    PowerJobAutoConfiguration自动配置源码流程解析

    这篇文章主要为大家介绍了PowerJobAutoConfiguration自动配置源码流程解析,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-12-12
  • Java简单使用redis-zset实现排行榜

    Java简单使用redis-zset实现排行榜

    这篇文章主要介绍了Java简单使用redis-zset实现排行榜,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-12-12
  • java实现fibonacci数列学习示例分享(斐波那契数列)

    java实现fibonacci数列学习示例分享(斐波那契数列)

    这篇文章主要介绍了fibonacci数列(斐波那契数列)示例,大家参考使用吧
    2014-01-01
  • Java基础巩固小项目点菜系统的实现

    Java基础巩固小项目点菜系统的实现

    这篇文章主要介绍了一个Java小项目点菜系统的实现,主要是用的集合,适合正在学习Java的朋友拿来实战练手,感兴趣的朋友快来看看吧
    2022-03-03
  • JAVA中使用FileWriter写数据到文本文件步骤详解

    JAVA中使用FileWriter写数据到文本文件步骤详解

    这篇文章主要介绍了JAVA中使用FileWriter写数据到文本文件步骤详解,FileWriter类提供了多种写入字符的方法,包括写入单个字符、写入字符数组和写入字符串等,它还提供了一些其他的方法,如刷新缓冲区、关闭文件等,需要的朋友可以参考下
    2023-10-10
  • Spring Boot Admin 进行项目监控管理的方法

    Spring Boot Admin 进行项目监控管理的方法

    Spring Boot Admin是一个开源社区项目,用于管理和监控SpringBoot应用程序。 这篇文章主要介绍了 Spring Boot Admin 进行项目监控管理的方法,需要的朋友可以参考下
    2020-07-07
  • 秒懂Kotlin之Java工程师快速掌握Kotlin的技巧

    秒懂Kotlin之Java工程师快速掌握Kotlin的技巧

    Kotlin 是一种在 Java 虚拟机上运行的静态类型编程语言,被称之为 Android 世界的Swift,由 JetBrains 设计开发并开源。这篇文章主要介绍了秒懂Kotlin之Java工程师快速掌握Kotlin的技巧,需要的朋友可以参考下
    2021-09-09
  • java通过共享变量结束run停止线程的方法示例

    java通过共享变量结束run停止线程的方法示例

    这篇文章主要介绍了java通过共享变量结束run停止线程的方法,大家参考使用
    2013-11-11
  • SpringBoot项目更换项目名称的实现

    SpringBoot项目更换项目名称的实现

    本文主要介绍了SpringBoot项目更换项目名称,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2024-06-06

最新评论