¿Cómo mostrar el formato de fecha según la configuración regional?
Quiero mostrar una sugerencia de cómo se debe introducir una fecha. Para Alemania podría parecer
"Ingrese la fecha en este formato: dd.mm.yyy"
- Obtener la fecha de instalación de la aplicación en Android
- Java último día del problema del mes
- Cómo analizar la cadena "Mon Aug 08 16:44:19 EAT 2016" hasta la fecha en android
- ¿Cómo se formatea la fecha y la hora en Android?
- Cambiar la fecha del sistema del teléfono de Android en el botón haga clic en la aplicación de Android
Para los EE.UU.
"Introduzca la fecha en este formato: mm / dd / aaaa"
Entiendo que con
DateFormat dateFormat = android.text.format.DateFormat.getDateFormat(context);
Puedo convertir una fecha en un formato que coincida con la configuración regional del usuario. Pero, ¿cómo puedo obtener la cadena de día / mes / año para la pista?
Y, por supuesto, me gustaría lo mismo con una pista de tiempo, también.
Gracias por cualquier sugerencia.
- Configurar Gson para usar varios formatos de fecha
- ¿Por qué el año en curso en la fecha guardada como 3912?
- ¿Cómo obtener el primer día de la semana y mes actuales?
- Comparar si dos fechas están dentro de la misma semana en android
- Cómo formatear una fecha de calendario
- ¿Cómo manejar las diferencias de la base de datos de horarios de JodaTime y Android?
- Cómo obtener el valor datepicker en formato de fecha?
- Java convertir la marca de tiempo UTC a DateTime local
String hintText = new SimpleDateFormat().toPattern(); // dd/MM/y HH:mm
Sé que usted estaba pidiendo sólo la fecha, pero esto fue lo más cerca que puedo conseguir. La regla interna es localeData.getDateFormat(SHORT) + " " + localeData.getTimeFormat(SHORT)
así que supongo que siempre y cuando no haya un locale que tenga un formato de fecha con espacios en él, solo puede dividir la cadena en un espacio
Puede utilizar el método getBestDateTimePattern de DateFormat:
String datePattern = DateFormat.getBestDateTimePattern(Locale.getDefault(), "ddMMyyyy"); String timePattern = DateFormat.getBestDateTimePattern(Locale.getDefault(), "HHmmss");
Nota: asume el formato de 24 horas para el tiempo. Es posible que desee convertir a todas las mayúsculas o minúsculas antes de la presentación para el usuario.
Prueba esto:
Calendar cal = Calendar.getInstance(); int year = cal.get(Calendar.YEAR); int month = cal.get(Calendar.MONTH); int day = cal.get(Calendar.DAY_OF_MONTH); int hour = cal.get(Calendar.HOUR_OF_DAY); int minute = cal.get(Calendar.MINUTE); int second = cal.get(Calendar.SECOND); Calendar now = new GregorianCalendar(year, month, day, hour, minute, second); long time = now.getTimeInMillis(); Date date = new Date(time); String timeSet = DateFormat.getDateTimeInstance(DateFormat.SHORT, DateFormat.SHORT).format(date);
¿No sería más fácil conseguirle la fecha con un selector de la fecha: http://developer.android.com/guide/topics/ui/controls/pickers.html#DatePicker
Si no es así, eche un vistazo a esto: https://stackoverflow.com/a/11093572/3965178
- ¿Está bien usar la clase estática de "ayudante de base de datos"?
- No se puede eliminar la barra de título en Actividad