Berikut ini contoh yang sesuai dengan kasus pengujian Anda:
import java.text.SimpleDateFormat;
import java.util.Date;
public class StringToDateExample1 {
public static void main(String[] args)throws Exception {
String sDate1="20200913204839";
Date date1=new SimpleDateFormat("yyyyMMddhhmmss").parse(sDate1);
System.out.println(date1);
}
}
Dengan kasus uji 20200913204839
itu kembali:
Sun Sep 13 20:48:39 UTC 2020
Berikut arti karakter dalam SimpleDateFormat:
yyyy
menandakan satu tahun (Contoh:2020)
MM
menandakan satu bulan (Contoh:Juli, Agustus)
dd
menandakan hari dalam sebulan (Contoh:15)
HH
berarti satu jam dalam sehari (Contoh:20)
mm
dan ss
menandakan menit dan detik masing-masing (Contoh:52:34)
Tidak harus berupa Tanggal - cukup String yang berfungsi dengan baik.
Dan ya - menggunakan SimpleDateFormat berfungsi dengan baik.
EDIT:Pemformatan Khusus
Saya telah memformatnya khusus untuk kasus Anda:
import java.text.SimpleDateFormat;
import java.util.Date;
public class StringToDateExample1 {
public static void main(String[] args)throws Exception {
String sDate1="20200913204839";
Date date1=new SimpleDateFormat("yyyyMMddhhmmss").parse(sDate1);
String formatted = new SimpleDateFormat("dd-EE-yyyy hh:mm:ss").format(date1);
System.out.println(formatted);
}
}
Pertama-tama kita mengurai String menjadi tanggal, dari mana kita dapat memformat.
Kasus uji 20200913204839
kembali:
13-Sun-2020 08:48:39