JAVA获得当前时间的几种方法

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

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

public class NowString {
public static void main(String[] args) {
SimpleDateFormat df = new SimpleDateFormat(“yyyy-MM-dd HH:mm:ss”);//设置日期格式
System.out.println(df.format(new Date()));// new Date()为获取当前系统时间
}
}

二. 在数据库里的日期只以年-月-日的方式输出,可以用下面两种方法:

1、用convert()转化函数:

String sqlst = “select convert(varchar(10),bookDate,126) as convertBookDate from roomBook where bookDate between ‘2007-4-10’ and ‘2007-4-25’”;

System.out.println(rs.getString(“convertBookDate”));

2、利用SimpleDateFormat类:

先要输入两个java包:

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

然后:

定义日期格式:SimpleDateFormat sdf = new SimpleDateFormat(yy-MM-dd);

sql语句为:String sqlStr = “select bookDate from roomBook where bookDate between ‘2007-4-10’ and ‘2007-4-25’”;

输出:

System.out.println(df.format(rs.getDate(“bookDate”)));

************************************************************

java中获取当前日期和时间的方法

import java.util.Date;
import java.util.Calendar;

import java.text.SimpleDateFormat;

public class TestDate{
public static void main(String[] args){
Date now = new Date();
SimpleDateFormat dateFormat = new SimpleDateFormat(“yyyy/MM/dd HH:mm:ss”);//可以方便地修改日期格式

String hehe = dateFormat.format( now );
System.out.println(hehe);

Calendar c = Calendar.getInstance();//可以对每个时间域单独修改

int year = c.get(Calendar.YEAR);
int month = c.get(Calendar.MONTH);
int date = c.get(Calendar.DATE);
int hour = c.get(Calendar.HOUR_OF_DAY);
int minute = c.get(Calendar.MINUTE);
int second = c.get(Calendar.SECOND);
System.out.println(year + “/” + month + “/” + date + " " +hour + “:” +minute + “:” + second);
}
}

有时候要把String类型的时间转换为Date类型,通过以下的方式,就可以将你刚得到的时间字符串转换为Date类型了。

SimpleDateFormat sdf=new SimpleDateFormat(“yyyy-MM-dd”);

java.util.Date time=null;
try {
time= sdf.parse(sdf.format(new Date()));

} catch (ParseException e) {

e.printStackTrace();
}

Java中日期时间比较

java.text.SimpleDateFormat 类 ----时间日期格式化

java.util.Date类 ----构造时间日期

java.util.Date类compareTo方法 ----比较日期时间

java中日期时间的比较要用到java.text.SimpleDateFormat 类和java.util.Date类compareTo方法,SimpleDateFormat类用于时间日期格式化,将日期时间格式化为制定的格式,compareTo方法用于比较日期时间。以下为我写过的程序片段:

String data=doc.getItemValueString(“fd_ngr”);

//拟稿时间

Stringdata4=data.substring(data.indexOf(’ '),data.length());

int panduan=data4.indexOf(“-”);

int panduan1=data4.indexOf(“/”);

ec_dbsy=vi_dbsy.getAllEntries();

//构造日期格式yyyy-MM-NN

SimpleDateFormat formatter = new SimpleDateFormat(“yyyy-MM-dd”);

SimpleDateFormat formatter2 = new SimpleDateFormat(“MM/dd/yyyy”);

if(data4.length()!=0)

{

if (panduan!=-1){

try {

Date date1 = formatter.parse(data4);

Date date0=new Date();

Date date2 =formatter.parse(“2006-08-31”);

Date date3=formatter.parse(“2006-07-01”);

int number1=date1.compareTo(date2);

int number2=date1.compareTo(date3);

//返回 0 表示时间日期相同

//返回 1 表示日期1>日期2

//返回 -1 表示日期1<日期2

if( number2==1)

{

if(number1==-1)

{

System.out.println(“日期格式符合要求!”);

System.out.println(“日期格式符合要求的yyyy-MM-dd的文档ID是:”+doc.getUniversalID());

String mPath=“\”+“\10.52.4.4\d$\Program Files\WebSphere\AppServer\installedApps\oa1\oaWeb20061030_war.ear\oaWeb20061030.war\doc_fw”;

DaglImpl daglImpl = new DaglImpl();

daglImpl.addFW(doc,mPath);//归档处理

}

}

} catch (ParseException e) {

e.printStackTrace();

}

}

java中时间比较大小

分类:JAVA 2012-07-05 16:41 1062人阅读 评论(0) 收藏 举报

方法一:

DateFormat fmt = new SimpleDateFormat(“yyyy-MM-dd”);

String dateBegin=fmt.format(carrierCommand.getDateBegin());

String dateEnd=fmt.format(carrierCommand.getDateEnd());

//如果获得的日期格式不是’2008-05-22’,就必须要格式化一下日期

String dateBegin = request.getParameter(“dateBegin”);

String dateEnd = request.getParameter(“dateEnd”);

if(java.sql.Date.valueOf(dateBegin).after(java.sql.Date.valueOf(dateEnd))){

//起始日期大于结束日期

errors.rejectValue(“dateEnd”, null, “起始日期必须小于结束日期!”);

}

StringBuffer timeBegin = new StringBuffer();

StringBuffer timeEnd = new StringBuffer();

timeBegin.append(request.getParameter(“timeBegin”));

timeEnd.append(request.getParameter(“timeEnd”));

timeBegin.append(“:00”);

timeEnd.append(“:00”);

if(java.sql.Date.valueOf(dateBegin).equals(java.sql.Date.valueOf(dateEnd)))

{ //起始日期等于结束日期

if(java.sql.Time.valueOf(timeBegin.toString()).equals(java.sql.Time.valueOf

(timeEnd.toString())))//时间相同

{

errors.rejectValue(“timeEnd”, null, “起始与结束日期相同,起始时间必须小于结束时间!”);

}

if(java.sql.Time.valueOf(timeBegin.toString()).after(java.sql.Time.valueOf

(timeEnd.toString())))//时间相同

{

errors.rejectValue(“timeEnd”, null, “起始与结束日期相同,起始时间必须小于结束时间!”);

}

}

方法二:

import java.text.DateFormat;

import java.text.SimpleDateFormat;

import java.util.Date;

/**

*

* @author hp

*/

public class test {

public static void main(String args[]) {

int i= compare_date(“1995-11-12 15:21”, “1999-12-11 09:59”);

System.out.println(“i==”+i);

}

public static int compare_date(String DATE1, String DATE2) {

DateFormat df = new SimpleDateFormat(“yyyy-MM-dd hh:mm”);

try {

Date dt1 = df.parse(DATE1);

Date dt2 = df.parse(DATE2);

if (dt1.getTime() > dt2.getTime()) {

System.out.println(“dt1 在dt2前”);

return 1;

} else if (dt1.getTime() < dt2.getTime()) {

System.out.println(“dt1在dt2后”);

return -1;

} else {

return 0;

}

} catch (Exception exception) {

exception.printStackTrace();

}

return 0;

}

}

方法三:

比如:现在是2004-03-26 13:31:40

过去是:2004-01-02 11:30:24

我现在要获得两个日期差,差的形式为:XX天XX小时XX分XX秒

java计算时间差及比较时间大小

比如:现在是2004-03-26 13:31:40

过去是:2004-01-02 11:30:24

我现在要获得两个日期差,差的形式为:XX天XX小时XX分XX秒

一:

DateFormat df = new SimpleDateFormat(“yyyy-MM-dd HH:mm:ss”);

try

{

Date d1 = df.parse(“2004-03-26 13:31:40”);

Date d2 = df.parse(“2004-01-02 11:30:24”);

long diff = d1.getTime() - d2.getTime();

long days = diff / (1000 * 60 * 60 * 24);

}

catch (Exception e)

{

}

二:

SimpleDateFormat df = new SimpleDateFormat(“yyyy-MM-dd HH:mm:ss”);

java.util.Date now = df.parse(“2004-03-26 13:31:40”);

java.util.Date date=df.parse(“2004-01-02 11:30:24”);

long l=now.getTime()-date.getTime();

long day=l/(24*60*60*1000);

long hour=(l/(60*60*1000)-day*24);

long min=((l/(60*1000))-day*24*60-hour*60);

long s=(l/1000-day*24*60*60-hour*60*60-min*60);

System.out.println(“”+day+“天”+hour+“小时”+min+“分”+s+“秒”);

三:

SimpleDateFormat dfs = new SimpleDateFormat(“yyyy-MM-dd HH:mm:ss”);

java.util.Date begin=dfs.parse(“2004-01-02 11:30:24”);

java.util.Date end = dfs.parse(“2004-03-26 13:31:40”);

long between=(end.getTime()-begin.getTime())/1000;//除以1000是为了转换成秒

long day1=between/(24*3600);

long hour1=between%(24*3600)/3600;

long minute1=between%3600/60;

long second1=between%60/60;

System.out.println(“”+day1+“天”+hour1+“小时”+minute1+“分”+second1+“秒”);

====================================================

java 比较时间大小

String s1=“2008-01-25 09:12:09”;

String s2=“2008-01-29 09:12:11”;

java.text.DateFormat df=new java.text.SimpleDateFormat(“yyyy-MM-dd HH:mm:ss”);

java.util.Calendar c1=java.util.Calendar.getInstance();

java.util.Calendar c2=java.util.Calendar.getInstance();

try

{

c1.setTime(df.parse(s1));

c2.setTime(df.parse(s2));

}catch(java.text.ParseException e){

System.err.println(“格式不正确”);

}

int result=c1.compareTo(c2);

if(result==0)

System.out.println(“c1相等c2”);

else if(result<0)

System.out.println(“c1小于c2”);

else

System.out.println(“c1大于c2”);

JAVA获得当前时间的几种方法

分类:

package com.xjp.common.util;

import java.sql.Timestamp;
import java.text.ParsePosition;
import java.text.SimpleDateFormat;
import java.util.Date;

import com.ttsoft.framework.util.DateUtil;

/**
* Title:时间获取
* Description:当前时间
* Copyright: Copyright 2010
* Company:
* @author jiq
* @version 1.0
*/
public class XJPDateUtil extends DateUtil {
public static final String[] months = { “一月”, “二月”, “三月”, “四月”, “五月”, “六月”,
“七月”, “八月”, “九月”, “十月”, “十一月”, “十二月”, };

public static final String[] quarters = { “一季度”, “二季度”, “三季度”, “四季度” };

public XJPDateUtil() {
}

/**
* 获取日期字符串。
*
*

* 日期字符串格式: yyyyMMdd
* 其中:
* yyyy 表示4位年。
* MM 表示2位月。
* dd 表示2位日。
*

*
* @return String "yyyyMMdd"格式的日期字符串。
*/
public static String getDate() {
SimpleDateFormat formatter = new SimpleDateFormat(“yyyyMMdd”);

return formatter.format(new Date());
}

/**
* 获取当前年度字符串。
*
*

* 日期字符串格式: yyyy
* 其中:
* yyyy 表示4位年。
* 

*
* @return String "yyyy"格式的当前年度字符串。
*/
public static String getNowYear() {
SimpleDateFormat formatter = new SimpleDateFormat(“yyyy”);

return formatter.format(new Date());
}

/**
* 获取当前月度字符串。
*
*

* 日期字符串格式: MM
* 其中:
* MM 表示4位年。
* 

*
* @return String "yyyy"格式的当前月度字符串。
*/
public static String getNowMonth() {
SimpleDateFormat formatter = new SimpleDateFormat(“MM”);

return formatter.format(new Date());
}

/**
* 获取当前月度字符串。
*
*

* 日期字符串格式: dd
* 其中:
* dd 表示4位年。
* 

*
* @return String "yyyy"格式的当前月度字符串。
*/
public static String getNowDay() {
SimpleDateFormat formatter = new SimpleDateFormat(“dd”);

return formatter.format(new Date());
}

/**
* 获取日期字符串。
*
*

* 日期字符串格式: yyyyMMdd
* 其中:
* yyyy 表示4位年。
* MM 表示2位月。
* dd 表示2位日。
* 

*
* @param date
* 需要转化的日期。
* @return String "yyyyMMdd"格式的日期字符串。
*/
public static String getDate(Date date) {
SimpleDateFormat formatter = new SimpleDateFormat(“yyyy-MM-dd”);

return formatter.format(date);
}

/**
* 获取日期字符串。
*
*

* 日期字符串格式: yyyyMMdd
* 其中:
* yyyy 表示4位年。
* MM 表示2位月。
* dd 表示2位日。
* 

*
* @param date
* 需要转化的日期。
* @return String "yyyyMMdd"格式的日期字符串。
*/
/**
* 将指定的日期字符串转化为日期对象
*
* @param dateStr
* 日期字符串
* @return java.util.Date
* @roseuid 3F39FE450385
*/
public static Date getDate(String dateStr) {
if (XJPTypeChecker.isDate(dateStr)) { // 日期型
SimpleDateFormat df = new SimpleDateFormat(“yyyyMMdd”);
try {
java.util.Date date = df.parse(dateStr);
return date;
} catch (Exception ex) {
Logger.write(“日期格式不符合或者日期为空!请检查!”);
return null;
} // end try - catch
} else if (XJPTypeChecker.isDatetime(dateStr)) { // 日期时间型
SimpleDateFormat df = new SimpleDateFormat(
“yyyy-MM-dd HH:mm:ss.SSS”);
try {
java.util.Date date = df.parse(dateStr);
return date;
} catch (Exception ex) {
return null;
} // end try - catch
} // end if
return null;
}

/**
* 获取日期字符串。
*
*

* 日期字符串格式: yyyy-MM-dd
* 其中:
* yyyy 表示4位年。
* MM 表示2位月。
* dd 表示2位日。
* 

*
* @return String "yyyy-MM-dd"格式的日期字符串。
*/
public static String getHyphenDate() {
SimpleDateFormat formatter = new SimpleDateFormat(“yyyy-MM-dd”);

return formatter.format(new Date());
}

/**
* 获取日期字符串。
*
*

* 日期字符串格式: yyyy-MM-dd
* 其中:
* yyyy 表示4位年。
* MM 表示2位月。
* dd 表示2位日。
* 

*
* @param date
* 需要转化的日期。
* @return String "yyyy-MM-dd"格式的日期字符串。
*/
public static String getHyphenDate(Date date) {
SimpleDateFormat formatter = new SimpleDateFormat(“yyyy-MM-dd”);

return formatter.format(date);
}

/**
* 将"yyyyMMdd"格式的日期字符串转换为日期对象。
*
* @param source
* 日期字符串。
* @return Date 日期对象。
*/
public static Date parsePlainDate(String source) {
SimpleDateFormat sdf = new SimpleDateFormat(“yyyyMMdd”);

return sdf.parse(source, new ParsePosition(0));
}

/**
* 将“yyyy-MM-dd”格式的日期字符串转换为日期对象。
*
* @param source
* 日期字符串。
* @return Date 日期对象。
*/
public static Date parseHyphenDate(String source) {
SimpleDateFormat sdf = new SimpleDateFormat(“yyyy-MM-dd”);

return sdf.parse(source, new ParsePosition(0));
}

/**
* 将指定格式的日期字符串转换为日期对象。
*
* @param source
* 日期字符串。
* @param pattern
* 模式。
* @return Date 日期对象。
*/
public static Date parseDate(String source, String pattern) {
SimpleDateFormat sdf = new SimpleDateFormat(pattern);

return sdf.parse(source, new ParsePosition(0));
}

/**
* 将“yyyy-MM-dd”格式的日期字符串转换为“yyyyMMdd”格式的日期字符串。
*
* @param source
* 日期字符串。
* @return String "yyyymmdd"格式的日期字符串。
*/
public static String toPlainDate(String source) {
Date date = parseHyphenDate(source);
SimpleDateFormat formatter = new SimpleDateFormat(“yyyyMMdd”);

return formatter.format(date);
}

/**
* 将“yyyyMMdd”格式的日期字符串转换为“yyyy-MM-dd”格式的日期字符串。
*
* @param source
* 日期字符串。
* @return String "yyyy-MM-dd"格式的日期字符串。
*/
public static String toHyphenDate(String source) {
Date date = parsePlainDate(source);
SimpleDateFormat formatter = new SimpleDateFormat(“yyyy-MM-dd”);

return formatter.format(date);
}

/**
* 获取时间戳,将日期对象转换为时间戳类型。
*
* @param date
* 日期对象
* @return Timestamp 时间戳
*/
public static Timestamp getTimestamp(Date date) {
return new Timestamp(date.getTime());
}

/**
* 获取时间戳,将当前日期转换为时间戳类型。
*
* @return Timestamp 时间戳
*/
public static Timestamp getTimestamp() {
return new Timestamp(new Date().getTime());
}

/**
* 将“yyyyMMdd”格式的日期字符串转换为Timestamp类型的对象。
*
* @param source
* 日期字符串
* @return Timestamp 时间戳
*/
public static Timestamp parseTimestamp(String source) {
Date date = parsePlainDate(source);

return getTimestamp(date);
}

/**
* 获得年度周期

* Example:

* XJPDateUtil.getPeriodYear(“20040229” , -1);

* XJPDateUtil.getPeriodYear(“20040228” , -1);

* XJPDateUtil.getPeriodYear(“20020230” , 2);

*
* @param source
* 时间串
* @param yearPeriod
* 年度周期 -1代表本时间的上一年度,以次类推。
* @return String 时间。
*/
public static String getPeriodYear(String source, int yearPeriod) {
int p = Integer.parseInt(source.substring(0, 4)) + yearPeriod;
String newYear = String.valueOf§
+ source.substring(4, source.length());
Date date = parsePlainDate(newYear);
String s = getDate(date);
int ny = Integer.parseInt(s);
int sy = Integer.parseInt(newYear);

while (ny > sy) {
sy–;
ny = Integer.parseInt(getDate(parsePlainDate(String.valueOf(sy))));
}

return String.valueOf(sy);
}

/**
* 获取当前日期和时间
*
* @return String
*/
public static String getCurrentDateStr() {
Date date = new Date();
String str = null;
SimpleDateFormat df = new SimpleDateFormat(“yyyyMMdd HH:mm:ss”);
str = df.format(date);
return str;
}

/**
* 日期相加
*
* @param day
* 天数
* @return 返回相加后的日期
*/
public static String addDate(int day) {
java.util.Calendar c = java.util.Calendar.getInstance();

c.setTimeInMillis(System.currentTimeMillis() + ((long) day) * 24 * 3600
* 1000);
SimpleDateFormat df = new SimpleDateFormat(“yyyyMMdd HH:mm:ss”);
return df.format(c.getTime());
}

/**
* 返回毫秒
*
* @param date
* 日期
* @return 返回毫秒
*/
public static long getMillis(java.util.Date date) {
java.util.Calendar c = java.util.Calendar.getInstance();
c.setTime(date);
return c.getTimeInMillis();
}
/**
* 获取当前日期和时间
* @param format 日期格式 例:yyyy-MM-dd hh:mm
* @return String
*/
public static String getNowDate(String format) {
Date date = new Date();
String str = null;
SimpleDateFormat df = new SimpleDateFormat(format);
str = df.format(date);
return str;
}
/**
* 将strmon的日期减小一个月
* @param mon
* @return
*/
public static String getReduceMonDate(String strmon) {
if (strmon != null && !strmon.equals(“”)) {
Date mon = parseHyphenDate(strmon);
mon.setMonth(mon.getMonth() - 1);
return getHyphenDate(mon);
} else {
return “”;
}
}
public static String getTimeStr(String dateStr){
Date date=getDate(dateStr);
String str = null;
SimpleDateFormat df = new SimpleDateFormat(“HH:mm:ss”);
str = df.format(date);
return str;
}
public static String getTimeStr(){
String str=“”;
SimpleDateFormat df = new SimpleDateFormat(“HH:mm:ss”);
str = df.format(new Date());
return str;
}
}

java 获取当前系统时间 时间比较相关推荐

  1. java 获取三天前时间_java 获取前几天时间

    标签: java   获取前几天时间 一.toLocaleString()函数过时: //当前时间 Date endDate=new Date(); String endTime=endDate.to ...

  2. java获取当天的最后时间

    java获取当天的最后时间 String endTime = DateFormatUtils.format(new Date(), "yyyy-MM-dd 23:59:59")

  3. [虚幻引擎][UE5]获取当前系统的时间

    [虚幻引擎][UE5]获取当前系统的时间 方法一: 方法二: 方法三: 方法一: 效果: 方法二: 效果: 缺点:没有办法都是两位 方法三:

  4. java获取当前系统时间毫秒_java 获取当前系统时间简写 | 学步园

    本文是集合各位网友的经典,在加上我的理解,后续会不断完善. 1.java.util.Date类型转换成long类型 java.util.Date dt = new Date(); System.out ...

  5. java获得windows系统当前时间与时间不符合

    我用System.currentTimeMillis()获得系统当前时间,如下代码: Date time = new Date(System.currentTimeMillis());SimpleDa ...

  6. VC++ 获取Windows系统开机时间

    以下提供两种方法获取Windows系统的开机时间 第一种是使用C++的函数,该方法使用当前时间减去系统运行时间,秒级的,偶尔存在1秒的差异 第二种是使用Windows的API,该方法获取到的时间与cm ...

  7. Java获取指定时区的时间格式

    示例 分享一个获取指定时区的时间格式方法:timeZoneOffset指定为8,获取东8区的时间,timeZoneOffset指定为-5,获取西5区的时间. import java.text.Simp ...

  8. java获取东八区时间

    // 获取东八区时间public static Date getGMT8Time(){Date gmt8 = null;try {Calendar cal = Calendar.getInstance ...

  9. Java获取当日的起始时间和结束时间

    //获取0点 public static Date getStartTime() {Calendar todayStart = Calendar.getInstance();todayStart.se ...

最新文章

  1. mysql 5.7.18-winx64_mysql 5.7.18 winx64安装配置方法图文教程
  2. AWS 开源 SageMaker,帮助开发人员优化机器学习模型
  3. LIstview滑动时不加载图片,停止时加载!
  4. python 报错 too many values to unpack (expected 3) 的解决方案
  5. linux环境下的连接器,Linux下连接器ld链接如何排序
  6. Oracle密码过期问题 ORA-28001:the password has expired
  7. Kanvas:从您的ANTLR语法生成一个简单的IDE
  8. FD.io VPP利用iperf3进行UDP灌包测试-英特尔X520万兆网卡
  9. SVN版本管理:两种开发模式
  10. 渗透测试神器Burp Suite v1.6.12破解版
  11. XMind思维导图使用详解
  12. android os x86下载,Android-x86 Lineage OS 14.1-r3下载(2019/10/23官方更新版)
  13. 从C、C++、Java到Python,编程入门到底学什么语言好?
  14. 成都富华力鼎:抖音直播技巧
  15. C# 托盘图标缓存清除
  16. scrap安装——Windows
  17. 【产品】一次完整的产品需求分析及设计流程分享
  18. 【推荐系统->论文阅读】Towards the Next Generation of Recommender Systems(推荐系统综述,下一代推荐系统: 最新技术和可能扩展)
  19. 全球及中国户外餐具行业竞争格局及发展前景规模预测报告2021-2027年版
  20. 邮箱大师支持html,fullPage.js制作网易邮箱大师页面

热门文章

  1. 目前流行的装修风格_目前最流行的12种装修风格,你喜欢哪一种
  2. 收起你的泪水,找回自我:伤感语录分享
  3. 全局变量 urllib模块 json模块
  4. 黑白激光打印机打印时出现黑道,怎么办?
  5. 乐人之乐,人亦乐其乐!继续分享五款好用的软件
  6. vue页面实现锚点定位
  7. 华氏温度100f对应的摄氏温度c语言,2.2求华氏温度 100°F 对应的摄氏温度
  8. Oracle DB 管理ASM实例
  9. android 输入法不自动弹出窗口,Android EditText默认不弹出输入法的实现方法
  10. Ableton Live 10 Sound Packs Collection 声音乐器组件拓展包合集