Kullanım LocalDateTime#parse()(veya ZonedDateTime#parse()dize bir zaman dilimi bölümünü barındırıyorsa bu) bir ayrıştırmak için Stringbir içine belli bir düzende LocalDateTime.
String oldstring = "2011-01-18 00:00:00.0";
LocalDateTime datetime = LocalDateTime.parse(oldstring, DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss.S"));
A'yı belirli bir düzende a biçiminde biçimlendirmek için LocalDateTime#format()(veya ZonedDateTime#format()) tuşunu kullanın .LocalDateTimeString
String newstring = datetime.format(DateTimeFormatter.ofPattern("yyyy-MM-dd"));
System.out.println(newstring); // 2011-01-18
Ya da henüz Java 8 değilken, kullanmak SimpleDateFormat#parse()bir ayrıştırmak için Stringbir içine belli bir düzende Date.
String oldstring = "2011-01-18 00:00:00.0";
Date date = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss.S").parse(oldstring);
A'yı belirli bir düzende a SimpleDateFormat#format()biçiminde biçimlendirmek için kullanın .DateString
String newstring = new SimpleDateFormat("yyyy-MM-dd").format(date);
System.out.println(newstring); // 2011-01-18
Ayrıca bakınız:
Güncelleme : başarısız girişiminize göre: desenler büyük / küçük harfe duyarlıdır . Tek tek parçaların ne anlama geldiğini java.text.SimpleDateFormatjavadok okuyun . Yani örneğin Maylarca ve mdakikalarca duruyor . Ayrıca, yıllar yyyybeş değil dört basamaklıdır yyyyy. Yukarıda gönderdiğim kod parçacıklarına daha yakından bakın.