Конвертировать строковую дату в формате гггг-ММ-дд в формат Java UtilDatein в формате гггг-ММ-дд
Я хочу взять значение даты в виде строки в формате yyyy-MM-dd и вернуть дату использования jabva в том же формате. Для этого я использую приведенный ниже код, но результат будет выглядеть как "Ср Сен 18 00:00:00 CEST 2013"
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
String strdate = "2013-09-18";
Date utilDate = sdf.parse(strdate);
System.out.println(utilDate);
Нужно ли учитывать локаль? Пожалуйста, помогите достичь этого. заранее спасибо
1 ответ
Пожалуйста, попробуйте ниже код. Вы также должны отформатировать объект simpleDateFormat и передать в него объект utilDate, чтобы создать отформатированную дату, указанную вами.
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
public class DateTest {
public static void main(String[] args) throws ParseException{
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
String strdate = "2013-09-18";
Date utilDate = sdf.parse(strdate);
String date=sdf.format(utilDate );
System.out.println(date);
}
}
Мы также можем реализовать через Java8, как показано ниже:
import java.text.ParseException;
import java.time.LocalDate;
import java.time.format.DateTimeFormatter;
public class DateTest {
public static void main(String[] args) throws ParseException{
String strdate = "2013-09-18";
DateTimeFormatter formatter=DateTimeFormatter.ofPattern("yyyy-MM-dd");
LocalDate date = LocalDate.parse(strdate, formatter);
System.out.println(date.format(formatter));
}
}
или вы также можете использовать только LocalDate для изменения в утилите Java, как показано ниже.
import java.time.LocalDate;
public class TestCircle {
public static void main(String args[]){
String strdate = "2013-09-18";
LocalDate date = LocalDate.parse(strdate);
System.out.println(date);
}
}