`

Java字符串转换为日期和时间比较大小

    博客分类:
  • java
阅读更多

方法一:

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字符串转换为日期和时间比较大小[归类].pdf

    Java字符串转换为日期和时间比较大小[归类].pdf

    Java中封装的全局日期处理工具类

    判断字符串是否为日期字符串 获取日期字符串的日期风格。失敗返回null。 将日期字符串转化为日期。失败返回null。 将日期字符串转化为另一日期字符串。失败返回null。 增加日期的年份。失败返回null。 增加...

    文件大小和最后修改日期的转换

    文件大小和最后修改日期的转换 文件大小和最后修改日期的转换 文件大小和最后修改日期的转换

    关于日期的处理包括java和sql

    关于日期的处理包括java和sql。其中提到各种情况,如字符串和日期之间转换、日期的增减、获取年月日、日期比较大小等等,个人总结的拿出来和大家共享一下

    日期工具类

    14个常用的日期方法。1.获取当前时间,2.,...为时间减去分钟 ,10两个日期大小比较,11.判断时间是否超过一定的小时数 ,12获取当前日期往后一定的年数,13.计算两个日期之间相差的天数 ,14.字符串的日期格式的计算

    我自己的常用Java工作辅助类

    我自己一直使用的辅助类,压缩包的内容如下:DateUtil.java日期操作类.MyFiles.java文件操作类.ReadWebs.java调用远程页面的方法类.StringUtil.java字符串转换操作类.Uploadfile.java校验文件大小及格式的类

    java源码包---java 源码 大量 实例

     设定字符串为“张三,你好,我是李四”  产生张三的密钥对(keyPairZhang)  张三生成公钥(publicKeyZhang)并发送给李四,这里发送的是公钥的数组字节  通过网络或磁盘等方式,把公钥编码传送给李四,李四接收到...

    java8日期工具类大全

    使用DateTimeFormatter类可以定义自定义的日期格式,并在日期和字符串之间进行转换。工具类可以封装常见的日期格式,如年-月-日、月/日/年等,并提供方法来格式化和解析日期字符串。 日期计算和操作:日期工具类...

    java jdk实列宝典 光盘源代码

    java的声音处理,介绍java中如何处理声音,包括实现响铃,播放wav,au等音频文件,以及控制声音的大小和音量,Beep.java; 媒体播放器,JMFMediaPlayer.java; 12反射 是java程序开发的特征之一,允许java程序对自身...

    java源码包2

     设定字符串为“张三,你好,我是李四”  产生张三的密钥对(keyPairZhang)  张三生成公钥(publicKeyZhang)并发送给李四,这里发送的是公钥的数组字节  通过网络或磁盘等方式,把公钥编码传送给李四,李四接收到...

    JAVA上百实例源码以及开源项目源代码

     设定字符串为“张三,你好,我是李四”  产生张三的密钥对(keyPairZhang)  张三生成公钥(publicKeyZhang)并发送给李四,这里发送的是公钥的数组字节  通过网络或磁盘等方式,把公钥编码传送给李四,李四接收到...

    JAVA上百实例源码以及开源项目

     设定字符串为“张三,你好,我是李四”  产生张三的密钥对(keyPairZhang)  张三生成公钥(publicKeyZhang)并发送给李四,这里发送的是公钥的数组字节  通过网络或磁盘等方式,把公钥编码传送给李四,李四接收到...

    java源码包4

     设定字符串为“张三,你好,我是李四”  产生张三的密钥对(keyPairZhang)  张三生成公钥(publicKeyZhang)并发送给李四,这里发送的是公钥的数组字节  通过网络或磁盘等方式,把公钥编码传送给李四,李四接收到...

    java 算法

    数组和数组之间的转换代码,从资源文件里读取值的类,一个随机类,计算传入值是否星期六,为RootPaneContainer组件添加键盘事件,将数组转成字符串 在调试或记录日志时用到,转换文件大小,多线程的世界时钟,显示...

    java源码包3

     设定字符串为“张三,你好,我是李四”  产生张三的密钥对(keyPairZhang)  张三生成公钥(publicKeyZhang)并发送给李四,这里发送的是公钥的数组字节  通过网络或磁盘等方式,把公钥编码传送给李四,李四接收到...

    JAVA面试题最全集

    编码转换,怎样实现将GB2312编码的字符串转换为ISO-8859-1编码的字符串。 9.Java中访问数据库的步骤,Statement和PreparedStatement之间的区别。 10.找出下列代码可能存在的错误,并说明原因: 二、JSP&Servlet...

    成百上千个Java 源码DEMO 4(1-4是独立压缩包)

    设定字符串为“张三,你好,我是李四” 产生张三的密钥对(keyPairZhang) 张三生成公钥(publicKeyZhang)并发送给李四,这里发送的是公钥的数组字节 通过网络或磁盘等方式,把公钥编码传送给李四,李四接收到张三编码后...

    深入Java虚拟机(原书第2版).pdf【附光盘内容】

    6.3 特殊字符串 6.3.1 全限定名 6.3.2 简单名称 6.3.3 描述符 6.4 常量池 6.4.1 constant_utf8_info表 6.4.2 constant_integer_info表 6.4.3 constant_float_info表 6.4.4 constant_long_...

Global site tag (gtag.js) - Google Analytics