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,一经查实,立即删除!

相关文章

Mac 使用常见问题汇集

1、Mac系统如何隐藏文件或文件夹? 在 Mac 文件的文件名前添加 . 即可使文件隐藏 2、Mac系统如何查看隐藏文件? 终端里面能用命令来控制: 显示Mac隐藏文件的命令:defaults write com.apple.finder AppleShowAllFiles YES 隐藏Mac隐藏文件的命令…

安卓手机的a/span的宽高失效

最近在做一个移动端的项目&#xff0c;网页版 在IOS上显示都是妥妥的&#xff0c;可是一部华为中的UC浏览器的效果就让人傻眼了&#xff0c;好多按钮都是都缩在一起&#xff0c;宽高失效。 折腾了半天找不到蛛丝马迹&#xff0c;最后实验发现<a><span>在华为手机中…

java model 封装_Java封装统一的Result Model案例

在开发过程中&#xff0c;有时候会需要使用错误码错误信息的形式&#xff0c;来返回某些业务操作的错误结果信息&#xff0c;来代替效率较低的异常传递。这样就需要封装一个统一的Result model作为返回值&#xff0c;代替直接返回数据等结果。1.定义错误码 - 错误信息接口错误码…

java 日期随机数_Java 生成指定时间范围的随机时间、随机中文姓名、随机字符姓名、随机数...

解决问题&#xff1a;Java生成指定时间范围的随机时间&#xff1f;Java生成随机中文姓名&#xff1f;Java生成随机字符姓名&#xff1f;Java生成随机数&#xff1f;代码&#xff1a;import java.io.UnsupportedEncodingException;import java.text.ParseException;import java.…

java语言程序设计基础篇14.6答案_《Java语言程序设计-基础篇》答案-第15章

第15章 异常和断言复习题15.1 答&#xff1a;略15.2 答&#xff1a;声明异常是为了在方法中产生异常时&#xff0c;以便通知方法的调用者。在方法声明的头部使用关键字throws 声明&#xff0c;一个方法可以声明多个异常。如&#xff1a;public void method() throws IOExceptio…

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

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

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

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

java8 循环jsonarray_JSONArray 遍历方式

第一种(java8):遍历JSONArray 拼接字符串 public static void main(String[] args) {JSONArray jSONArray = new JSONArray(); JSONObject jb = new JSONObject(); jb.put("id", 1); jb.put("name", "s"); jSONArray.add(jb); JSONObject j1 = …

Codeforces Round #361(div 2)

A题题目意思很简单&#xff0c;问一种拨号的方式(拨号手势)是不是能拨出唯一的号码(例如253就不是唯一的&#xff0c;因为586也是可以的) 记录电话上每个格子上下左右是否还有格子&#xff0c;一个拨号手势是唯一的当且仅当&#xff0c;所拨号码的所有格子在同一个方向不同时有…

java货物进销管理系统_java实验 货物进销管理系统

实验二货物进销管理系统一&#xff0e;实验目的1&#xff0e;掌握Java中文件的读写操作。2&#xff0e;学会使用Java提供的实用类(Vector, ArrayList)来完成特定的功能。3&#xff0e;掌握字符串类(String, StringBuffer)的使用。4&#xff0e;掌握用面向对象的方法分析和解决复…

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

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

GCD API 理解 (一)

资料先行 GCD 深入理解&#xff1a;第一部分 GCD 深入理解&#xff1a;第二部分 以上两篇文章是关于GCD讲的比较好的文章&#xff0c;翻译自raywenderlich&#xff0c;该网站有很多关于iOS 开发的优秀文章。 引子 iOS 开发中有三大进阶性的技术点&#xff0c;分别是GCD、runti…

java怎么生成字母_在Java中生成字母序列

我的版本实现了Iterator并且保持一个int计数器.计数器值转换为相应的字符串&#xff1a;import com.google.common.collect.AbstractIterator;class Sequence extends AbstractIterator {private int now;private static char[] vs;static {vs new char[Z - A 1];for(char iA…

linux 的终端字体色和背景色的修改方法(二)

Linux终端下的颜色设置 2013-08-31 22:57:15分类&#xff1a; LINUX 在 ANSI 兼容终端&#xff08;例如 xterm、rxvt、konsole 等&#xff09;里&#xff0c; 可以用彩色显示文本而不仅仅是黑白。 本文示范了如何使用粗体和彩色的文字。 相信每一位Linux使用者都要面对 Bash。 …

java中的STL库_C++11 STL线程库实现一个简单的线程池

使用C11 STL线程库实现一个线程池。处理机制是抢占式的&#xff0c;即所有线程从一个队列(std::queue)中获取任务执行(计算字符串简单HASH值)&#xff0c;使用std::mutex和std::conditional_variable实现队列访问并发协调。#include #include #include #include #include #incl…

广搜 广搜 poj 3984

***求最短路径&#xff0c;然后再输出路径&#xff0c; BFS路径输出*** #include <iostream> #include <cstdio> #include <cstring> #include <algorithm> #include <stack> #include <queue> #include <cmath>using namespace std…

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

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

python redis订阅_Python 学习笔记 - Redis

Redis 和Memcached类似 也是一个开源的内存存储系统&#xff0c;存储格式也是通过键值对的方式。不过和memcached比起来&#xff0c;memcached的value只支持字符串&#xff0c;而redis支持字符串&#xff0c;列表&#xff0c;集合&#xff0c;hash等等&#xff1b;这些数据类型…

egret中loadingUI的自定义

loadingUI中是加载资源&#xff0c;此时如果想自定义loadingUI界面&#xff0c;那么此刻正在加载的图片肯定不能用了。 解决方法就是使用服务器资源 直接加载服务器资源就好了 class LoadingUI extends egret.Sprite { public constructor(){ super(); this.c…

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

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