Programa Java para formatear la hora en formato AM-PM

El formato de clase de fecha y hora se usa para mostrar la fecha y la hora y manipular la fecha y la hora en Java y, además, también se usa para formatear la clase de fecha y hora en Java en los datos asociados a la zona horaria. Entonces, para importar esta clase desde un paquete llamado ‘ java.utils’. Después de importar esta clase, se puede crear un objeto de la clase Fecha para imprimir la fecha y la hora actuales. Ahora, para imprimir la fecha y hora predeterminadas, simplemente llame al comando de impresión usando el método toString() para obtener la fecha y hora actuales.

Los milisegundos, si se calculan a través de la llamada de función de clase de datos incorporada desde cualquier momento en la referencia base del código, se establecen como 1 de enero de 1970. Para imprimir el número de milisegundos hasta ahora, simplemente use getTime() en lugar de String() para obtener el número de milisegundos hasta ahora. Suponga que el usuario quiere una fecha, hora y mes en particular a partir de la hora actual. Esto se puede hacer con las clases Date y SimpleDateFormat de Java.

Nota: Época de tiempo 1 de enero de 1970

Enfoques:

  • Uso de SimpleDateFormat
  • Usando la división de la string

Enfoque 1: formato de fecha simple

La clase SimpleDateFormat es una clase en Java que proporciona varios métodos para analizar y formatear la fecha y la hora. Esta clase hereda la clase java.text.DateFormat . El método format() de la clase DateFormat en Java se usa para formatear una fecha determinada en una string de fecha/hora. Básicamente, el método se usa para convertir esta fecha y hora en un formato particular, es decir, «mm/dd/yyyy».  format() método utilizado para cambiar el formato de los parámetros dados a él de una manera particular.

Sintaxis:

public final String format(Date date)

Parámetros: el método toma una fecha de parámetro del tipo de objeto Fecha y se refiere a la fecha cuya salida de string se va a producir.

Valor devuelto: el método devuelve la fecha o la hora en formato de string de «mm/dd/yyyy»

Implementación: en este ejemplo de Java, la hora ingresada por el usuario se convierte de formato de 24 a 12 horas con marcador AM/PM. 

Java

// Java program to convert 24 hour
// time format to 12 hour format
 
// Importing specific date class libraries
import java.util.Date;
import java.text.SimpleDateFormat;
 
public class GFG {
   
  // Main driver method
    public static void main(String[] args)
    {
        // Getting the current current time
        Date date = new Date();
 
       
        System.out.println("Current Time is : " + date);
 
        // set format in 12 hours
        SimpleDateFormat formatTime = new SimpleDateFormat("hh.mm aa");
        // hh = hours in 12hr format
        // mm = minutes
        // aa = am/pm
 
        String time = formatTime.format(
            date); // changing the format of 'date'
 
        // display time as per format
        System.out.println(
            "Current Time in AM/PM Format is : " + time);
    }
}
Producción

Current Time is : Mon Oct 26 08:34:53 UTC 2020
Current Time in AM/PM Format is : 08.34 AM

Enfoque 2: sin usar ninguna clase especial de Java

Aquí solo se utilizan los métodos incorporados que se enumeran a continuación en formato tabular y el papel de ellos en la conversión. El tiempo se refiere a los marcadores AM/PM en el formato estándar de 12 desde el formato de 24 horas sin siquiera importar la clase de fecha.   

nombre del método Acción realizada
separar() Se utiliza para dividir la string.
tiempo.división(“:”) Esta sintaxis en nuestro programa significa que la función de división se aplica a la string ‘tiempo’ y está dividiendo la string por el carácter ‘:’ que se pasa dentro de la función.
formato( ) Se utiliza para cambiar el formato de una string.

Implementación:  

Java

// Java program to convert 24 hour
// time format to 12 hour format
 
// Importing generic java libraries
import java.util.*;
 
class GFG {
 
    // Function converting entered values to String type
    static void convertTime(String time)
    {
        String format;
 
        // Parsing hours, minutes and seconds in array
        String[] arr = time.split(":");
 
        // Converting hours into integer
        int hh = Integer.parseInt(arr[0]);
 
        if (hh > 12) {
            hh = hh - 12;
            format = "PM";
        }
        else if (hh == 00) {
            hh = 12;
            format = "AM";
        }
        else if (hh == 12) {
            hh = 12;
            format = "PM";
        }
        else {
            format = "AM";
        }
 
        // Converting hh to String and
        // padding it with 0 on left side
        String hour = String.format("%02d", hh);
        String minute = arr[1];
        String second = arr[2];
 
        // Printing formatted time
        System.out.print("Time in 12-hour format is : ");
        System.out.print(hour + ":" + minute + ":" + second
                         + " " + format);
    }
 
    // Main driver code
    public static void main(String[] args)
    {
        // Taking input from the user via Scanner class
        Scanner sc = new Scanner(System.in);
 
        // Asking from user to enter
        // time in 24 format
        System.out.println(
            "Enter the time in 24-hour format : ");
 
        /* User: Remember to enter time in below format
                 Enter in this format - '14:02:45' */
        String time = sc.nextLine();
 
        // Passing time as entered above as parameter
        // wher efunrion isn
        convertTime(time);
    }
}

Producción:

Publicación traducida automáticamente

Artículo escrito por yashgupta2808 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *