Android, ¿Cómo puedo convertir la cadena a la fecha?
Guardo la hora actual en la base de datos cada vez que la aplicación comienza por el usuario.
Calendar c = Calendar.getInstance(); String str = c.getTime().toString(); Log.i("Current time", str);
En el lado de la base de datos, almacenar la hora actual como cadena (como se ve en el código anterior). Por lo tanto, cuando lo cargue desde la base de datos, necesito convertirlo en objeto Date. Vi algunas muestras que todos ellos habían utilizado "DateFormat". Pero mi formato es exactamente igual que el formato de fecha. Por lo tanto, creo que no hay necesidad de utilizar "DateFormat". ¿Estoy bien?
- Cuerdas Android dependientes del tema
- StringBuilder perdió datos al convertir a String
- Alternativa de DatatypeConverter.printHexBinary (byte array) y DatatypeConverter.parseHexBinary (String str) en Android
- ¿Qué hay de malo en la cadena hardcoded en el archivo xml android?
- Reemplazar el dígito inglés con el dígito persa en Cadena, excepto las URL
¿Hay de todos modos para lanzar directamente este objeto String a la fecha? Quiero comparar este tiempo almacenado con la hora actual.
Gracias
======> Actualizar
Gracias cariñosos. He utilizado el código siguiente:
private boolean isPackageExpired(String date){ boolean isExpired=false; Date expiredDate = stringToDate(date, "EEE MMM d HH:mm:ss zz yyyy"); if (new Date().after(expiredDate)) isExpired=true; return isExpired; } private Date stringToDate(String aDate,String aFormat) { if(aDate==null) return null; ParsePosition pos = new ParsePosition(0); SimpleDateFormat simpledateformat = new SimpleDateFormat(aFormat); Date stringDate = simpledateformat.parse(aDate, pos); return stringDate; }
- Android StringBuilder vs Concatenación de cadenas
- JUnit4 TextUtils.isEmpty () da un resultado diferente que String.isEmpty ()
- Cómo leer / escribir cadena de un archivo en Android
- ¿Cómo comprobar el idioma de un dispositivo en android?
- Marcador de posición de la cadena de Android diferentes idiomas
- ¿Cómo se puede convertir mejor StringBuilder en String ?
- Cómo getResources (). GetString () funciona android
- ¿Cómo inserto un salto de línea en una cadena para mostrarlo en un widget Android TextView?
De la cadena hasta la fecha
String dtStart = "2010-10-15T09:27:37Z"; SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss'Z'"); try { Date date = format.parse(dtStart); System.out.println(date); } catch (ParseException e) { // TODO Auto-generated catch block e.printStackTrace(); }
De la Fecha a la Cadena
SimpleDateFormat dateformat = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss'Z'"); try { Date date = new Date(); String datetime = dateFormat.format(date); System.out.println("Current Date Time : " + datetime); } catch (ParseException e) { // TODO Auto-generated catch block e.printStackTrace(); }
SimpleDateFormat dateFormat = new SimpleDateFormat("DD-MM-YYYY"); Date d = dateFormat.parse(datestring)
Usando la clase SimpleDateFormat o DateFormat a través de
Por ejemplo
try{ SimpleDateFormat sdf = new SimpleDateFormat("dd/MM/yyyy"); // here set the pattern as you date in string was containing like date/month/year Date d = sdf.parse("20/12/2011"); }catch(ParseException ex){ // handle parsing exception if date string was different from the pattern applying into the SimpleDateFormat contructor }
Podría ser una buena idea tener cuidado con la c.getTime().toString();
regional en la que c.getTime().toString();
Depende.
Una idea es almacenar el tiempo en segundos (por ejemplo, tiempo UNIX ). Como un int
usted puede compararlo fácilmente, y después usted lo convierte justo a la secuencia al exhibirlo al usuario.
- Eliminar el borde de enfoque de EditText
- Android Studio marca R en rojo con el mensaje de error "no se puede resolver el símbolo R", pero la generación tiene éxito