Java.text.ParseException: Fecha inestable: "2014-06-04" (en el desplazamiento 5)
Quiero analizar la fecha en un formato deseado pero estoy recibiendo una excepción cada vez. Sé que es fácil de implementar pero estoy enfrentando algún problema no sé dónde exactamente .:
Exception: java.text.ParseException: Unparseable date: "2014-06-04" (at offset 5)
El siguiente es mi código:
- Cómo hacer un reemplazo sobre las webs cargadas en una Webview
- Aplicación de Android dañada usando texureview
- La creación de un JSON con Gson hace que la aplicación se bloquee
- JavascriptInterface llamado pero no mostrando Toast
- Android WebView app fallando en el emulador: null Contexto de la aplicación?
private String getconvertdate(String date) { DateFormat inputFormat = new SimpleDateFormat("yyyy-MMM-dd HH:mm:ss",Locale.ENGLISH); inputFormat.setTimeZone(TimeZone.getTimeZone("UTC")); DateFormat outputFormat = new SimpleDateFormat("dd-MMM-yyyy",Locale.ENGLISH); Date parsed = null; try { parsed = inputFormat.parse(date); } catch (ParseException e) { // TODO Auto-generated catch block e.printStackTrace(); } String outputText = outputFormat.format(parsed); return outputText; }
Método de entrada: 2014-06-04
Producto esperado: 06-Jun-2014
He seguido algunos Ref. Desde Stackoverflow.com, pero aún persiste el problema. Por favor ayuda.
- Android, ¿Cómo puedo obtener texto de TextView en OnClick
- No se puede iniciar Android Studio
- Compatibilidad con versiones anteriores del diseño del material: colorAccent requiere el nivel 21 de API cuando se utiliza appcompat7
- Alineación derecha e izquierda con lineal o relativelayout con texto truncado?
- Libgdx se bloquea en Android
- Android: ¿Cómo implementar Parcelable a mis objetos?
- Cuando se utiliza GLES20.glReadPixels en android, los datos devueltos por él no son exactamente iguales con la vista previa en vivo
- ¿Cómo obtengo espacios pequeños como separador de números en Android?
Usted no tiene parte del tiempo en su cadena: y el mes tiene sólo dos caracteres reemplazar
new SimpleDateFormat("yyyy-MMM-dd HH:mm:ss",Locale.ENGLISH);
con
new SimpleDateFormat("yyyy-MM-dd",Locale.ENGLISH);
// Try this way,hope this will help you to solve your problem.... public String convertDateStringFormat(String strDate, String fromFormat, String toFormat){ try{ SimpleDateFormat sdf = new SimpleDateFormat(fromFormat); sdf.setTimeZone(TimeZone.getTimeZone("UTC")); SimpleDateFormat dateFormat2 = new SimpleDateFormat(toFormat.trim()); return dateFormat2.format(sdf.parse(strDate)); }catch (Exception e) { e.printStackTrace(); return ""; } }
Tal vez usted necesita para abordar diferentes formatos de entrada A continuación, coger la excepción de formato actualmente no administrado (sólo una muestra):
private String getconvertdate(String date) { System.out.println(date.length()); DateFormat inputFormat = null; if(date.length() == 20) inputFormat = new SimpleDateFormat("yyyy-MMM-dd HH:mm:ss",Locale.ENGLISH); if(date.length() == 10) inputFormat = new SimpleDateFormat("yyyy-MM-dd",Locale.ENGLISH) ; if(null == inputFormat) return "Format invalid"; inputFormat.setTimeZone(TimeZone.getTimeZone("UTC")); DateFormat outputFormat = new SimpleDateFormat("dd-MMM-yyyy",Locale.ENGLISH); Date parsed = null; try { parsed = inputFormat.parse(date); } catch (ParseException e) { return "Input Date invalid"; } String outputText = outputFormat.format(parsed); return outputText; }
En mi caso, estaba usando ::
SimpleDateFormat todaySdf = new SimpleDateFormat("dd MMM yyyy", Locale.ENGLISH);
Cambiado a
SimpleDateFormat todaySdf = new SimpleDateFormat("dd MM yyyy", Locale.ENGLISH);
Y funcionó .. el extra M fue el culpable!
- Objetos de hilo no recogidos después de finalizado
- Llamadas de API más altas cuando se segmenta un SDK inferior