[英]How to make custom string format like (yyyy_MM_dd_HH_mm_ss_mobileno_Out.mp3)
[英]How to compare a date - String in the custom format “dd.MM.yyyy, HH:mm:ss” with another one?
我必须相互检查以自定义格式"dd.MM.yyyy, HH:mm:ss"
2个日期String
。 我怎样才能长大一点呢?
例如 :
String date1 = "05.02.2013, 13:38:14";
String date2 = "05.02.2013, 09:38:14";
有没有办法通过比较来获取date2
?
我只给您简要说明您应该如何进行。 您需要首先将这些日期字符串解析为Date
对象。 为此使用DateFormat#parse(String)
。 从这些字符串中获取Date
对象之后,可以使用Date#compareTo(Date)
方法比较那些对象。
您已经有了日期格式,将其与SimpleDateFormat
一起使用,然后比较创建的Date
对象。
在此处查看演示。 样例代码:
public static void main(String[] args) Exception {
String date1 = "05.02.2013, 13:38:14";
String date2 = "05.02.2013, 09:38:14";
System.out.println(getOlder(date1, date2)); // 05.02.2013, 13:38:14
System.out.println(getOlder(date2, date1)); // 05.02.2013, 13:38:14
}
public static String getOlder(String one, String two) throws ParseException {
Date dateOne = new SimpleDateFormat("dd.MM.yyyy, HH:mm:ss").parse(one);
Date dateTwo = new SimpleDateFormat("dd.MM.yyyy, HH:mm:ss").parse(two);
if (dateOne.compareTo(dateTwo) > -1) {
return one; // or return dateOne;
}
return two; // or return dateTwo;
}
当然,以上方法将返回最早输入的日期字符串。 您可以对其进行更改(请参见注释)以返回Date
对象。
使用日期和时间进行计算总是很棘手,我强烈建议为此使用适当的类,您可能需要为此检查Joda Time 。
他们的类提供了诸如daysBetween之类的方法,可为您提供所需的结果。
当然,您必须解析您的String才能首先给您一个代表该日期和时间的对象。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.