当前位置:首页 > 编程教程 > java技术文章 > Java日期时间以及日期相互转换

如何实现Java日期时间格式转换

  • 发布时间:
  • 作者:码农之家
  • 点击:125

这篇文章主要知识点是关于Java、日期时间、Java日期时间字符串和毫秒相互转换的方法 的内容,如果大家想对相关知识点有系统深入的学习,可以参阅以下电子书

Java软件结构与数据结构
  • 类型:Java大小:129 MB格式:PDF作者:John Lewis
立即下载

Java日期时间以及日期相互转换

Java日期时间,以及相互转化,供大家参考,具体内容如下

package com.study.string;

import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
import java.util.GregorianCalendar;

public class DateBase {

 public static void main(String[] args) throws ParseException {
  /*
   * 获得当前时间
   */
  Date date1 = new Date();
  long long1 = date1.getTime();//date类型,转为 long类型
  System.out.println(date1);//Sat Aug 26 08:36:36 GMT+08:00 2017
  System.out.println(long1);//1503708031359
  
  Calendar cale1 = Calendar.getInstance();
  date1 = cale1.getTime();//calendar 类型 转为 date类型
  long1 = date1.getTime();
  System.out.println(cale1);
  System.out.println(date1);//Sat Aug 26 08:36:36 GMT+08:00 2017
  System.out.println(long1);
  
  /*
   *设置时间 
   */
  long1 += 24*60*60*1000;
  date1.setTime(long1);
  System.out.println(date1);//Sun Aug 27 08:43:26 GMT+08:00 2017
  
  /*
   * 格式化时间日期,无参数的默认格式,有参数的自定义格式。
   * Date -> String 用 format()
   * String -> Date 用 parse()
   */
  SimpleDateFormat sim1 = new SimpleDateFormat();//默认格式:17-8-27 上午8:45
  String time1 = sim1.format(date1);
  System.out.println(time1);//17-8-27 上午8:45 
  Date date11 = sim1.parse(time1);
  System.out.println(date11);
  
  SimpleDateFormat sim2 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss sss");
  String time2 = sim2.format(date1);
  System.out.println(time2);//2017-08-27 08:47:58 058
  Date date22= sim2.parse(time2);
  System.out.println(date22);//Sun Aug 27 08:52:08 GMT+08:00 2017
  
  /*
   * 创建指定日期 String 
   * GregorianCalendar
   */
  SimpleDateFormat sim3 = new SimpleDateFormat("yyyy-MM-dd");
  String str1 = "2014-09-27";
  Date date33 = sim3.parse(str1);
  System.out.println(date33);//Sat Sep 27 00:00:00 GMT+08:00 2014
  
  
  GregorianCalendar gre1 = new GregorianCalendar(2015,Calendar.DECEMBER,25);
  Date date44 = gre1.getTime();
  System.out.println(date44);//Fri Dec 25 00:00:00 GMT+08:00 2015
  
  
  Calendar cal2 = Calendar.getInstance();
  cal2.set(Calendar.YEAR, 2017);
  cal2.set(Calendar.MONTH, 7);//月份的数字与 第几个月差1, 8 == Calendar.SEPTEMBER
  cal2.set(Calendar.DATE, 26);// Tue Sep 09 09:04:25 GMT+08:00 2008
//  cal2.set(Calendar.DAY_OF_MONTH, 12);
  System.out.println(cal2.getTime());//Sat Aug 26 09:09:44 GMT+08:00 2017
  
  
  
  /*
   * 获取年月日,星期,时间
   */
  int dayOfweek = cal2.get(Calendar.DAY_OF_WEEK);
  System.out.println(dayOfweek);//7 是星期六
  
  
  /*
   * Calendar 的时间加减
   */
  Calendar cal3 = Calendar.getInstance();
  cal3.add(Calendar.YEAR, 1);
  cal3.add(Calendar.MONTH, -2);
  System.out.println(cal3.getTime());//Tue Jun 26 09:14:11 GMT+08:00 2018
  
  
  /*
   * 
   */
  Calendar cal4 = Calendar.getInstance();
  cal4.set(Calendar.YEAR, 2016);
  cal4.set(Calendar.DATE, 1);
  //每个月的最后 一天
  for(int month = Calendar.JANUARY;month<Calendar.DECEMBER; month++){
    cal4.set(Calendar.MONTH, month);
    System.out.println(cal4.get(Calendar.YEAR)+"年"+(month+1)+"月"+
      cal4.getActualMaximum(Calendar.DATE)+"日");
  }

/*
2016年1月31日
2016年2月29日
2016年3月31日
2016年4月30日
2016年5月31日
2016年6月30日
2016年7月31日
2016年8月31日
2016年9月30日
2016年10月31日
2016年11月30日
   */
  
  //直接创建long 型的时间
  long long2 = System.currentTimeMillis();
  Date daten = new Date(long2);
  System.out.println(daten);//Sat Aug 26 09:41:08 GMT+08:00 2017
 }

}

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持码农之家。

Java日期时间字符串和毫秒相互转换的方法

本文内容大多基于官方文档和网上前辈经验总结,经过个人实践加以整理积累,仅供参考。

1、日期时间字符串转换成毫秒

@Test
public void test() throws ParseException {
  String dateTime = "2016-12-31 12:30:45 123";
  Calendar calendar = Calendar.getInstance();
  calendar.setTime(new SimpleDateFormat("yyyy-MM-dd HH:mm:ss SSS").parse(dateTime));
  System.out.println("日期[2016-12-31 12:30:45 123]对应毫秒:" + calendar.getTimeInMillis());
}


运行结果:

Java日期时间字符串和毫秒相互转换的方法

2、毫秒转换成日期时间字符串

@Test
public void test() {
  long millisecond = 1483159625851l;
  Date date = new Date(millisecond);
  SimpleDateFormat format = new SimpleDateFormat("yyyy年MM月dd日 hh:mm:ss SSS a");
  System.out.println("毫秒[1483159625851]对应日期时间字符串:" + format.format(date));
}

运行结果:

Java日期时间字符串和毫秒相互转换的方法

更多日期时间字符串格式请参考:Java:SimpleDateFormat

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持码农之家。

以上就是本次给大家分享的关于java的全部知识点内容总结,大家还可以在下方相关文章里找到相关文章进一步学习,感谢大家的阅读和支持。

Java日期时间格式转换 相关电子书
学习笔记
网友NO.482600

JavaScript判断日期时间差的实例代码

js判断日期时间的代码如下所示: alert(GetDateDiff("2018-02-27 19:20:22","2018-02-27 09:20:22","hour"));function GetDateDiff(startTime, endTime, diffType) { //将xxxx-xx-xx的时间格式,转换为 xxxx/xx/xx的格式 startTime = startTime.replace(/\-/g, "/"); endTime = endTime.replace(/\-/g, "/"); //将计算间隔类性字符转换为小写 diffType = diffType.toLowerCase(); var sTime =new Date(startTime); //开始时间 var eTime =new Date(endTime); //结束时间 //作为除数的数字 var timeType =1; switch (diffType) { case"second": timeType =1000; break; case"minute": timeType =1000*60; break; case"hour": timeType =1000*3600; break; case"day": timeType =1000*3600*24; break; default: break; } return parseInt((eTime.getTime() - sTime.getTime()) / parseInt(timeType));} PS:下面看下js求时间差 var date1=new Date(); //开始时间alert("aa");var date2=new Date(); //结束时间var date3=date2.getTime()-date1.getTime() //时间差的毫秒数//计算出相差天数……

网友NO.656210

PHP与Java对比学习日期时间函数

废话少说先来看PHP中 date(): 格式化一个本地时间或者日期,当前时间 2016年5月13日 15:19:49 使用函数date(),输出当前是月份中的第几天,参数:String类型 d 例如:echo date("d"); 输出 13 使用函数date(),输出当前是星期中的第几天,参数:String类型 D或者 N 例如: echo date("D"); 输出 Friecho date("N"); 输出 5echo date("l"); 输出 Friday 使用函数date(),输出当前月份中的第几月,参数:String类型 n echo date("n"); 输出 5 使用函数date(),判断当前年份是否是闰年,参数:String类型 L echo date("L"); 输出 1 strtotime():把字符串类型日期格式转成时间戳 使用函数strtotime(),打印前一天日期,参数:String类型 “-1 day” echo date("Y-m-d H:i:s",strtotime("-1day")); 输出 2016-05-12 15:27:33 使用函数strtotime(),打印明天日期,参数:String类型 “+1 day” echo date("Y-m-d H:i:s",strtotime("+1 day")); 输出 2016-05-14 15:28……

网友NO.854214

Java计算两个日期时间之间的天数最简方法

有一种low的方式,就是你把两个时间都换成秒,然后除以一天的秒数,然后向上取整,就是算的天数。但是这么实现太low啦。 jdk有高级的API,我们为啥还要自己去实现呢,问题就是我们不知道。 所以,我在这写个笔记,记录下,jdk 1.8 是怎么做的。 /** * 计算两个时间点之间的天数 */ private static void getBetweenDay() { LocalDate start = LocalDate.of(2018, 2, 12); LocalDate now = LocalDate.now(); System.out.println("两个时间之间的天数是:" + TimesUtils.getBetweenDay(start, now) + " 天。"); } /** * 计算两个时间点之间的天数 */ public static long getBetweenDay(LocalDate start, LocalDate end) { return end.toEpochDay() - start.toEpochDay(); } 后面的那个方法就是重点啦。 LocalDate.toEpochDay()。 将日期转换成Epoch 天,Epoch就是从1970-01-01(ISO)。开始的天数,和那个时间戳是一个道理,时间戳是秒数。 文章是简单了点,也许太……

网友NO.433651

JavaScript 日期时间选择器一些小结

flatpickr 是一个轻量级、注重精益、由 UX 驱动和可扩展的 JavaScript 日期时间选择器。 下载 演示 GitHub flatpickr 不依赖于任何库。更小的用户界面,但有很多主题。丰富的 API 和事件系统使其适用于任何环境。可用于 webpack ,也可作为 jQuery 插件使用。 安装 安装 flatpickr 模块 使用 NPM 安装 flatpickr 模块。包管理工具: https://www.npmjs.com/package/bower-npm-resolver # using npm installnpm i flatpickr --save 非模块环境 直接引入 flatpickr 文件 link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/flatpickr/dist/flatpickr.min.css"script src="https://cdn.jsdelivr.net/npm/flatpickr"/script 用法 如果你使用 webpack,你需要导入 flatpickr 。 // commonjsconst flatpickr = require("flatpickr"); // 如果可用,推荐使用 es 模块import flatpickr from "flatpickr"; 下面都是创建 flatpickr 实例的有效方法。 // 如果在框架中使用 flatpickr ,则建议直接传……

<
1
>

Copyright 2018-2020 www.xz577.com 码农之家

版权投诉 / 书籍推广 / 赞助:520161757@qq.com