다음과 같은 문제에 직면 해 있습니다. 날짜가 dd-mm-yyyy
있고이를 yyyy-MM-dd HH:mm
(즉, 주어진 날짜와 현재 시간 및 분으로) 변환해야합니다 .
예 : 주어진 날짜 : 11-06-2014
, 나는2014-06-11 09:30
public String previousDateString(String dateString)
throws ParseException {
// Create a date formatter using your format string
DateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm");
// Parse the given date string into a Date object.
// Note: This can throw a ParseException.
Date myDate = dateFormat.parse(dateString);
// Use the Calendar class to subtract one day
Calendar calendar = Calendar.getInstance();
calendar.setTime(myDate);
calendar.setTime(myDate);
calendar.add(Calendar.DAY_OF_YEAR, -1);
// Use the date formatter to produce a formatted date string
Date previousDate = calendar.getTime();
String result = dateFormat.format(previousDate);
return result;
}
이 코드를 시도했지만 2014-06-10 00:00
Calendar setTime 메서드는 시간과 분을 0으로 설정하므로 두 개의 Calendar 인스턴스를 사용해야합니다.
package com.ggl.testing;
import java.text.DateFormat;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
public class FormatDate {
private static final DateFormat inputDateFormat =
new SimpleDateFormat("dd-MM-yyyy");
private static final DateFormat outputDateFormat =
new SimpleDateFormat("yyyy-MM-dd HH:mm");
private Calendar calendar;
public String previousDateString(String dateString)
throws ParseException {
Calendar now = Calendar.getInstance();
calendar = Calendar.getInstance();
Date myDate = inputDateFormat.parse(dateString);
calendar.setTime(myDate);
calendar.set(Calendar.HOUR_OF_DAY,
now.get(Calendar.HOUR_OF_DAY));
calendar.set(Calendar.MINUTE,
now.get(Calendar.MINUTE));
return outputDateFormat.format(calendar.getTime());
}
public static void main(String[] args) {
String dateString = "10-06-2014";
try {
String output =
new FormatDate().previousDateString(dateString);
System.out.println(output);
} catch (ParseException e) {
e.printStackTrace();
}
}
}
출력-2014-06-10 10:47
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다