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

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

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());

}

运行结果:

900d234804d44e0d40af54604ad2c3d8.png

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));

}

运行结果:

15c17bcc7561fdb45c93b2a9e8c28e58.png

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

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

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

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/573358.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

《机器学习》周志华 习题答案9.4

原题采用Kmeans方法对西瓜数据集进行聚类。我花了一些时间居然没找到西瓜数据集4.0在哪里,于是直接采用sklearn给的例子来分析一遍,更能说明Kmeans的效果。 #!/usr/bin/python # -*- coding:utf-8 -*- import numpy as np import matplotlib.pyplot as p…

一个电商项目的功能模块梳理

电商项目核心玩法:定制商品供应链(商品辅料库)网红社区最近做项目,功能越来越多,想清晰地理解项目,有点累了。今天抽空,把这个项目的核心功能模块简要总结下,顺便画了个图。一、全局…

java forkjoin 简书_浅谈Java的Fork/Join并发框架

1. Fork/Join是什么Oracle的官方给出的定义是:Fork/Join框架是一个实现了ExecutorService接口的多线程处理器。它可以把一个大的任务划分为若干个小的任务并发执行,充分利用可用的资源,进而提高应用的执行效率。Fork/Join实现了ExecutorServi…

pycharm新建python file没有默认头_Pycharm 设置默认头的图文教程

Pycharm 设置默认头的图文教程1. 设置的路径是File->settings->Editor->File and Code Templates->Python Script内容见图:这样新建文件的时候就会默认头如下:这里说明下#!/usr/bin/evn python 和 #!/usr/bin/python的区别:第一种…

python不支持的数据类型有achar bint cfloat dlist_第1篇:Cython的数据类型(第二部分)

Cython的C指针与C一样,尽管指针性与变量而不是类型相关联,但可以在类型或变量附近声*号。%%cythoncdef int *acdef int *b但这样在变量a,b写在一行,cython编译器会发出警告的信息,因此建议每个变量单独声明%%cythoncdef int *a,*bCython中的指针的解引操…

【micropython】用python来进行BadUSB的USB-HID测试(含无线控制)

转载请注明:小五义http://www.cnblogs.com/xiaowuyi QQ群:64770604 本文以TPYBoardv101开发板为例讲解了利用micropython进行BadUSB的usb-HID设备测试的主要方法,使用mt7681模块进行了一个简单的实验,实现了手机摇控键盘输入的测…

php返回类中方法,php如何获取类中所有的方法名

php获取类中所有的方法名的方法:可以利用【get_class_methods()】函数来获取,【get_class_methods()】函数可以返回指定类中所有的方法名,并且会将方法名保存到数组中。【相关学习推荐:php编程(视频)】php获取类所有方法名的方法&…

如何安装php5.5,源码安装php5.5

centos6.6首先上传php-5.5.10至服务器安装依赖环境yum -y install gcc gcc-c autoconf libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel libxml2 libxml2-devel zlib zlib-devel glibc glibc-devel glib2 glib2-devel bzip2 bzip2-devel ncurses ncurses-d…

Fiddler中session的请求/响应类型与图标对照表

转载于:https://www.cnblogs.com/chengchengla1990/p/5681978.html

NOIP2014 uoj20解方程 数论(同余)

又是数论题 Q&A Q:你TM做数论上瘾了吗 A:没办法我数论太差了,得多练(shui)啊 题意 题目描述 已知多项式方程: a0a1xa2x^2..anx^n0 求这个方程在[1, m ] 内的整数解(n 和m 均为正整数&#x…

大专学的pHp找什么工作,大专毕业能做什么工作 毕业都去干嘛了

大专毕业能做什么工作,大专毕业后都去干嘛了,我梳理了基本信息,看来一下!大专毕业能做什么工作专科生毕业之后从业的职位基础包含了社会发展的各个方面。一般能够从业自身技术专业有关的工作中,如果有做生意的技能&…

SpringMVC启动过程详解(li)

通过对SpringMVC启动过程的深入研究,期望掌握Java Web容器启动过程;掌握SpringMVC启动过程;了解SpringMVC的配置文件如何配置,为什么要这样配置;掌握SpringMVC是如何工作的;掌握Spring源码的设计和增强阅读…

fusioncharts json java,FusionCharts使用教程:利用XML/JSON属性加载外部LOGO

在使用FusionCharts图表时,你可以在运行时加载外部Logo并显示于图表中。Logo可以是GIF/JPEG/PNG或SWF文件。你可以使用chart元素的logoURL属性来加载一个Logo。XMLJSON{"chart":{ "yaxisname":"Sales Figure", "caption":&…

matlab检测串口数据帧头,MATLAB 串口读取姿态数据及GUI实时动态显示设计

上一篇实现了Matlab 对串口数据的读取,数据可以读取并且保存到本地。本文主要设计GUI并且动态的显示曲线。可以更直观的观察实时的姿态数据和传感器数据。GUI设计效果:姿态GUi.png分别设置三个区域,分别为数据接收显示区域,串口设…

[转]面向对象的六大原则

现在编程的主流语言基本上都是面向对象的。如C#,C,JAVA。我们在使用时,已经构造了一个个的类。但是往往由于我们在类内部或外部的设计上存在种种问题,导致尽管是面向对象的语言,却是面向过程的逻辑,甚至维护…

上下文管理、redis发布订阅、RabbitMQ发布订阅、SQLAlchemy

一、上下文管理 import contextlib contextlib.contextmanager def work_state(state_list,worker_thread):state_list.append(worker_thread)try:yieldfinally:state_list.remove(worker_thread) free_list[] current_thread"alex" with work_state(free_list,curr…

JavaScript进阶(下)

指定分隔符连接数组元素join() join()方法用于把数组中的所有元素放入一个字符串。元素是通过指定的分隔符进行分隔的。 语法&#xff1a; arrayObject.join(分隔符) 参数说明: 注意&#xff1a;返回一个字符串&#xff0c;该字符串把数组中的各个元素串起来&#xff0c;用<…

ongl 表达式

struts.xml简单配置 <!-- &#xff08;默认false&#xff09;设置ognl表达式是否支持静态方法 --><constant name"struts.ognl.allowStaticMethodAccess" value"true"></constant><package name"ognl" namespace"/ogn…

Python开发-- Lesson 2--Python数据类型(2016/07/30)

1、文件操作 python中对文件、文件夹&#xff08;文件操作函数&#xff09;的操作需要涉及到os模块和shutil模块。 得到当前工作目录&#xff0c;即当前Python脚本工作的目录路径: os.getcwd() 返回指定目录下的所有文件和目录名:os.listdir() 函数用来删除一个文件:os.remove(…

oracle什么是重复组,规范化:“重复组”是什么意思?

扬帆大鱼英语的价值一次又一次地重复。这是重复组吗&#xff1f;不。在SUBJECT_MODULE中英语的多次出现不是重复组&#xff0c;甚至不是人们误认为重复组的两件事中的任何一个。它们也不是冗余或缺乏规范化的证据。这样的多个外观可能与冗余或规范化有关&#xff0c;但是在没有…