Anzeige der aktuellen Uhrzeit im 12-Stunden-Format mit AM / PM

Momentan wird die Uhrzeit als 13:35 Uhr angezeigt. Ich möchte jedoch als 12-Stunden-Format mit AM / PM, also 1:35 PM statt 13:35 PM angezeigt werden

Der aktuelle Code ist wie folgt

private static final int FOR_HOURS = 3600000; private static final int FOR_MIN = 60000; public String getTime(final Model model) { SimpleDateFormat formatDate = new SimpleDateFormat("HH:mm a"); formatDate.setTimeZone(userContext.getUser().getTimeZone()); model.addAttribute("userCurrentTime", formatDate.format(new Date())); final String offsetHours = String.format("%+03d:%02d", userContext.getUser().getTimeZone().getRawOffset() / FOR_HOURS, Math.abs(userContext.getUser().getTimeZone().getRawOffset() % FOR_HOURS / FOR_MIN)); model.addAttribute("offsetHours", offsetHours + " " + userContext.getUser().getTimeZone().getDisplayName(Locale.ROOT)); return "systemclock"; } 

   

Einfachster Weg, um mit dem Datum Muster zu bekommen – h:mm a , wo

  • h – Stunde in am / pm (1-12)
  • m – Minute in der Stunde
  • a – Am / pm Markierung

Code-Auszug :

 DateFormat dateFormat = new SimpleDateFormat("hh:mm a"); 

Lesen Sie mehr in der Dokumentation – SimpleDateFormat java 7

Verwenden Sie dieses SimpleDateFormat formatDate = new SimpleDateFormat("hh:mm a");

Bildbeschreibung hier eingeben

Java-Dokumente für SimpleDateFormat

Verwenden Sie "hh:mm a" anstelle von "HH:mm a" . Hier hh für 12 Stunden Format und HH für 24 Stunden Format.

Live- Demo

 SimpleDateFormat dateFormat = new SimpleDateFormat("dd-MMM-yy hh.mm.ss.S aa"); String formattedDate = dateFormat.format(new Date()).toString(); System.out.println(formattedDate); 

Ausgabe: 11-Sep-13 12.25.15.375 PM

 SimpleDateFormat formatDate = new SimpleDateFormat("hh:mm:ss a"); 
  • h wird für AM / PM-Zeiten (1-12) verwendet.

  • H wird 24 Stunden lang verwendet (1-24).

  • a ist der AM / PM-Marker

  • m ist eine Minute in der Stunde

Hinweis: Zwei hs drucken eine führende Null: 01.13 Uhr. Ein h wird ohne die führende Null drucken: 1:13 PM.

Sieht so aus, als ob mich im Grunde jeder schon geschlagen hat, aber ich schweife ab

Ersetzen Sie einfach die unten stehende statement und es wird funktionieren.

 SimpleDateFormat formatDate = new SimpleDateFormat("hh:mm a"); 
 // hh:mm will print hours in 12hrs clock and mins (eg 02:30) System.out.println(DateTimeFormatter.ofPattern("hh:mm").format(LocalTime.now())); // HH:mm will print hours in 24hrs clock and mins (eg 14:30) System.out.println(DateTimeFormatter.ofPattern("HH:mm").format(LocalTime.now())); // hh:mm a will print hours in 12hrs clock, mins and AM/PM (eg 02:30 PM) System.out.println(DateTimeFormatter.ofPattern("hh:mm a").format(LocalTime.now())); 

Mit Java 8:

 LocalTime localTime = LocalTime.now(); DateTimeFormatter dateTimeFormatter = DateTimeFormatter.ofPattern("hh:mm a"); System.out.println(localTime.format(dateTimeFormatter)); 

Die Ausgabe erfolgt im AM/PM Format.

 Sample output: 3:00 PM 
 SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd hh:mm a"); 

Dies zeigt das Datum und die Uhrzeit an

  //To get Filename + date and time SimpleDateFormat f = new SimpleDateFormat("MMM"); SimpleDateFormat f1 = new SimpleDateFormat("dd"); SimpleDateFormat f2 = new SimpleDateFormat("a"); int h; if(Calendar.getInstance().get(Calendar.HOUR)==0) h=12; else h=Calendar.getInstance().get(Calendar.HOUR) String filename="TestReport"+f1.format(new Date())+f.format(new Date())+h+f2.format(new Date())+".txt"; The Output Like:TestReport27Apr3PM.txt 
 SimpleDateFormat sdf = new SimpleDateFormat("hh:mm:ss a"); 

Um Ihr aktuelles Datums- und Uhrzeitformat für Mobilgeräte zu speichern

9. Februar 2018 10:36:59 PM

 Date date = new Date(); String stringDate = DateFormat.getDateTimeInstance().format(date); 

Sie können es überall mit TextView Ihrer Activity , Fragment , CardView , ListView TextView

 ` TextView mDateTime; mDateTime=findViewById(R.id.Your_TextViewId_Of_XML); Date date = new Date(); String mStringDate = DateFormat.getDateTimeInstance().format(date); mDateTime.setText("My Device Current Date and Time is:"+date); ` 

Sie können SimpleDateFormat dafür verwenden.

 SimpleDateFormat formatDate = new SimpleDateFormat("hh:mm a"); 

Hoffe das hilft dir.