2012-02-01 14 views
5

Sto implementando un'applicazione Android in cui voglio convertire il timestamp fino ad oggi, ma non ho potuto ottenere il successo. Ho provato sotto le cose. Si prega di controllare se sto facendo qualcosa di sbagliato.Convertire data e ora in Android?

sto passando questo valore:

myTimestamp=1328015914; 
DateFormat.getDateFormat(mContext).format(new Date(myTimestamp * 1000)); 

Riporta 11/1/1970 ma il suo male.

Please help me per questa query.

Grazie Manthan Dalal

+1

quale pacchetto si sta importando per utilizzare sopra la riga di codice? –

+0

possibile duplicato di [converte timestamp fino alla data] (http://stackoverflow.com/questions/6369731/convert-timestamp-to-date) –

risposta

4

Potrebbe essere necessario specificare il fuso orario. Questo è il metodo che uso.

private String getDate(long timeStamp){ 
    DateFormat objFormatter = new SimpleDateFormat("dd-MM-yyyy"); 
    objFormatter.setTimeZone(TimeZone.getTimeZone(timezone)); 

    Calendar objCalendar =  
      Calendar.getInstance(TimeZone.getTimeZone(timezone)); 
    objCalendar.setTimeInMillis(timeStamp*1000);//edit 
    String result = objFormatter.format(objCalendar.getTime()); 
    objCalendar.clear(); 
    return result;   
} 
+1

Ottima risposta, ma devi prima convertire il tim in millisecondi, quindi è necessario 'codice 'objCalendar.setTimeInMillis (timeStamp); – Yahia

0

hey come fare un metodo che convertirà il timestamp fino ad oggi. Mi piace -

public static Date convertTimestampToDate(Timestamp timestamp) { 
    return new Date(timestamp.getTime()); 
} 

Fammi sapere se funziona.

0
Calendar calendar = Calendar.getInstance(); 
TimeZone tz = TimeZone.getDefault(); 
calendar.add(Calendar.MILLISECOND,  
tz.getOffset(calendar.getTimeInMillis())); 
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); 
java.util.Date currenTimeZone=new java.util.Date((long)1379487711*1000); 
Toast.makeText(TimeStampChkActivity.this, sdf.format(currenTimeZone), Toast.LENGTH_SHORT).show();