Java获取当前时间及String、datetime、date相互转化

简介: Java获取当前时间及String、datetime、date相互转化 一、获取当前系统时间和日期并格式化输出: [java] view plain copy import java.util.

Java获取当前时间及String、datetime、date相互转化

一、获取当前系统时间和日期并格式化输出:

[java] view plain copy

  1. import java.util.Date;
  2. import java.text.SimpleDateFormat;
  3. public class NowString {
  4.    public static void main(String[] args) {
  5.       SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");//设置日期格式
  6.       System.out.println(df.format(new Date()));// new Date()为获取当前系统时间
  7.    }
  8. }

二、Date转换为Datetime

[java] view plain copy

  1. Date date = new Date();
  2. Timestamp timestamp = new Timestamp(date.getTime()); //2013-01-14 22:45:36.484 

三、String转换为Date

[java] view plain copy

  1. //String转换为java.util.Date 
  2. String str = "2013-01-14";
  3. SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
  4. Date date = null//初始化date 
  5. try {
  6. date = sdf.parse(str); //Mon Jan 14 00:00:00 CST 2013 
  7. catch (ParseException e) {
  8. e.printStackTrace();
  9. }

 

四、Date转换为String

[java] view plain copy

  1. //java.util.Date转换为String 
  2. Date date = new Date();
  3. DateFormat format = new SimpleDateFormat("yyyy-MM-dd");
  4. String str = format.format(date); //2013-01-14 

五、String转化为java.sql.Date

[java] view plain copy

  1. //String转换为java.sql.Date 
  2. String str = "2013-01-14";
  3. SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
  4. java.sql.Date sdate = null//初始化 
  5. try {
  6. java.util.Date udate = sdf.parse(str);
  7. sdate = new java.sql.Date(udate.getTime()); //2013-01-14 
  8. catch (ParseException e) {
  9. e.printStackTrace();
  10. }

六、SimpleDateFormat格式说明

G 年代标志符
y 年
M 月
d 日
h 时 在上午或下午 (1~12)
H 时 在一天中 (0~23)
m 分
s 秒
S 毫秒
E 星期
D 一年中的第几天
F 一月中第几个星期几
w 一年中第几个星期
W 一月中第几个星期
a 上午 / 下午 标记符
k 时 在一天中 (1~24)
K 时 在上午或下午 (0~11)
z 时区

[java] view plain copy

  1. import java.text.*;
  2. import java.util.Date;
  3. public class FormatDateTime {
  4.      public static void main(String[] args) {
  5.         ///   打印出2006年11月17日 15时19分56秒
  6.          SimpleDateFormat myFmt=new SimpleDateFormat("yyyy年MM月dd日 HH时mm分ss秒");
  7.         //打印   06/11/17 15:19
  8.          SimpleDateFormat myFmt1=new SimpleDateFormat("yy/MM/dd HH:mm");
  9.          //2006-11-17 15:19:56
  10.         SimpleDateFormat myFmt2=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
  11.       //2006年11月17日 15时19分56秒 星期五
  12.       SimpleDateFormat myFmt3=new SimpleDateFormat("yyyy年MM月dd日 HH时mm分ss秒 E ");
  13.         // 一年中的第 321 天 一年中第46个星期 一月中第3个星期 在一天中15时 CST时区
  14.        SimpleDateFormat myFmt4=new SimpleDateFormat(
  15.                     "一年中的第 D 天 一年中第w个星期 一月中第W个星期 在一天中k时 z时区");
  16.       Date now=new Date();
  17. System.out.println(myFmt.format(now));
  18.          System.out.println(myFmt1.format(now));
  19.          System.out.println(myFmt2.format(now));
  20.          System.out.println(myFmt3.format(now));
  21.          System.out.println(myFmt4.format(now));
  22.          System.out.println(now.toGMTString());// 17 Nov 2006 07:19:56 GMT
  23.          System.out.println(now.toLocaleString());// 2006-11-17 15:19:56
  24.          System.out.println(now.toString());// Fri Nov 17 15:19:56 CST 2006
  25.      }
  26. }

 

七、将Unix时间戳转换成指定格式日期

[java] view plain copy

  1. public String TimeStamp2Date(String timestampString, String formats){
  2.   Long timestamp = Long.parseLong(timestampString)*1000;
  3.   String date = new java.text.SimpleDateFormat(formats).format(new java.util.Date(timestamp));
  4.   return date;
  5. }

 

当调用TimeStampToDate("1252639886", "yyyy-MM-dd HH:mm:ss");

返回值:2009-11-09 11:31:26

原文地址http://www.bieryun.com/701.html

相关文章
|
6月前
|
DataWorks 数据管理 大数据
DataWorks操作报错合集之如何解决表字段类型从string改为datetime报错
DataWorks是阿里云提供的一站式大数据开发与治理平台,支持数据集成、数据开发、数据服务、数据质量管理、数据安全管理等全流程数据处理。在使用DataWorks过程中,可能会遇到各种操作报错。以下是一些常见的报错情况及其可能的原因和解决方法。
|
8月前
|
Java UED
Java中String强转int:一种常见的错误和解决方法
在Java中将非数字字符串转换为整数会导致`NumberFormatException`。要解决这个问题,可以使用`try-catch`捕获异常,正则表达式验证数字格式,或利用异常信息提供错误提示。例如,`Integer.parseInt()`会因遇到非数字字符如`"123abc"`而抛出异常,但通过异常处理或正则`\\d+`可确保安全转换。记得在编程时避免直接强转,以防止程序异常中断。
|
5月前
|
安全 Java API
时间日期API(Date,SimpleDateFormat,Calendar)+java8新增日期API (LocalTime,LocalDate,LocalDateTime)
这篇文章介绍了Java中处理日期和时间的API,包括旧的日期API(Date、SimpleDateFormat、Calendar)和Java 8引入的新日期API(LocalTime、LocalDate、LocalDateTime)。文章详细解释了这些类/接口的方法和用途,并通过代码示例展示了如何使用它们。此外,还讨论了新旧API的区别,新API的不可变性和线程安全性,以及它们提供的操作日期时间的灵活性和简洁性。
|
4月前
|
Java
Java的Date类使用
Java的Date类使用
51 0
|
6月前
|
前端开发 Java
成功解决:java.lang.String cannot be cast to java.lang.Integer
这篇文章记录了作者在使用Axios二次封装时遇到的一个Java类型转换问题,即前端传递的字符串参数不能直接转换为Integer类型,文章提供了正确的转换方法来解决这个问题。
成功解决:java.lang.String cannot be cast to java.lang.Integer
|
5月前
|
Java API
java date 增加10s后的时间
在 Java 中,要将 `Date` 对象增加 10 秒,可以通过 `Calendar` 类(适用于 Java 8 之前)或 `java.time` 包中的 `LocalDateTime`、`ZonedDateTime` 和 `Instant` 类(Java 8 及以上)实现。使用 `Calendar` 类时,需设置并修改 `Calendar` 实例。而在 `java.time` 包中,可以使用 `plus` 方法结合 `ChronoUnit.SECONDS` 来增加秒数。具体选择取决于是否需要处理时区以及 Java 版本。
183 1
|
6月前
|
安全 Java API
Java系类 之 String、StringBuffer和StringBuilder类的区别
这篇文章讨论了Java中`String`、`StringBuffer`和`StringBuilder`三个类的区别,其中`String`是不可变的,而`StringBuffer`是线程安全的可变字符串类,`StringBuilder`是非线程安全的可变字符串类,通常在单线程环境下性能更优。
Java系类 之 String、StringBuffer和StringBuilder类的区别
|
6月前
|
SQL 分布式计算 DataWorks
DataWorks产品使用合集之如何将STRING类型转换为DATETIME类型
DataWorks作为一站式的数据开发与治理平台,提供了从数据采集、清洗、开发、调度、服务化、质量监控到安全管理的全套解决方案,帮助企业构建高效、规范、安全的大数据处理体系。以下是对DataWorks产品使用合集的概述,涵盖数据处理的各个环节。
123 1
|
6月前
|
JavaScript 前端开发
JavaScript基础&实战(5)js中的数组、forEach遍历、Date对象、Math、String对象
这篇文章介绍了JavaScript中的数组、Date对象、Math对象以及包装类(String、Number、Boolean),并详细讲解了数组的创建、方法(如forEach、push、pop、unshift、slice、splice)和遍历操作,以及工厂方法创建对象和原型对象的概念。
JavaScript基础&实战(5)js中的数组、forEach遍历、Date对象、Math、String对象
|
6月前
|
Java Android开发
解决Android编译报错:Unable to make field private final java.lang.String java.io.File.path accessible
解决Android编译报错:Unable to make field private final java.lang.String java.io.File.path accessible
888 1