JAVA 8 Timestamp - Не можем ли мы изменить формат отметки времени так, как мы хотим? - PullRequest
0 голосов
/ 16 апреля 2020

Независимо от того, что я делаю, это не работает. Я хочу, чтобы он был в дд / мм / гггг. Я пытался и не смог этого сделать. Пробовал с JAVA 8 API мгновенного локального времени localdate localdatetime тоже.

DateFormat dateFormat = new SimpleDateFormat("dd/MM/yyyy");
Date date = dateFormat.parse("23/09/2007");
long time = date.getTime();
Timestamp ts = new Timestamp(time);
System.out.println(ts);

Печатает, как этот -23 00: 00: 00,0;

Ответы [ 2 ]

1 голос
/ 17 апреля 2020

java .time

Вы используете ужасные классы даты и времени, которые были годами go, вытесненными современными java .time классы.

➥ Никогда не используйте java.util.Date, java.sql.Date или java.sql.Timestamp.

Только для даты, без времени суток и без часового пояса, используйте LocalDate.

DateTimeFormatter f = DateTimeFormatter.ofPattern( "dd/MM/uuuu" ) ;
String input = "23/09/2007" ;
LocalDate ld = LocalDate.parse( input , f ) ;

Создание текста в стандартном формате ISO 8601.

String output = ld.toString() ;

Создание текста в том же пользовательском формате.

String output = ld.format( f ) ;
1 голос
/ 16 апреля 2020

TimeStamp имеет свой собственный формат, поэтому вам нужно отформатировать его в соответствии с вашими потребностями

Попробуйте,

      SimpleDateFormat f = new SimpleDateFormat("dd/MM/yyyy HH:mm:ss");
      Date date = f.parse("23/12/2007 00:00:00");
      String strDate = f.format(date);
      System.out.println("Current Date = "+strDate);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...