2017-03-28 2 views
-3

Ich bekomme einige JSON-Daten vom Server, die auch Daten enthält. Aber es zeigt das Datum wie dieses 2017-07-20 00:00:00, aber ich möchte nur das Datum wie folgt sehen: 2017-07-20, und ich überprüfte die vorherigen Fragen zu diesem Problem, aber alle von ihnen basierten auf dem Datum in der Android-Seite. Und das Problem ist, dass ich das Datum als JSON bekomme und deshalb weiß ich nicht, wie ich Time daraus entfernen kann.Entfernen Sie die Stunde, Minute und Sekunden vom Datum vom Server erhalten als JSON

Antwort

3

Haben Sie versucht, diese Zeichenfolge so einfach zu parsen?

String date_string = "2017-07-20 00:00:00"; 
String[] parsed = date_string.split(" "); 
String your_wanted_string = parsed[0]; 
System.out.println(your_wanted_string); 

EDIT

  1. Sie haben wie hier Zeichenfolge in Date konvertieren: https://stackoverflow.com/a/4216767/1979882
  2. Convert Date Millisekunden. Oder verwenden Sie die Kalenderklasse.
  3. Berechnen Sie den Unterschied zwischen den Werten.

Ein Beispiel:

http://www.mkyong.com/java/how-do-get-time-in-milliseconds-in-java/

public class TimeMilisecond { 
    public static void main(String[] argv) throws ParseException { 

    SimpleDateFormat sdf = new SimpleDateFormat("dd-M-yyyy hh:mm:ss"); 
    String dateInString = "22-01-2015 10:20:56"; 
    Date date = sdf.parse(dateInString); 

    System.out.println(dateInString); 
    System.out.println("Date - Time in milliseconds : " + date.getTime()); 

    Calendar calendar = Calendar.getInstance(); 
    calendar.setTime(date); 
    System.out.println("Calender - Time in milliseconds : " + calendar.getTimeInMillis()); 

    } 
} 
+0

@Shayea genehmigt sie die Antwort, wenn es hilfreich – Vyacheslav

+0

ist und können Sie mir bitte sagen, wie man den Unterschied zwischen zwei Daten mit JOSN vom Server erhalten bekommen? – Shayea

+0

@Shayea, hat es gelesen – Vyacheslav

0
String date_from_json="your date goes here"; 
parseDate(date_from_json); 

     public String parseDate(String s) { 
     SimpleDateFormat inputFormat = new SimpleDateFormat("yyyy-mm-dd hh:mm:ss"); 
     SimpleDateFormat outputFormat = new SimpleDateFormat("yyyy-mm-dd"); 
     Date date = null; 
     String str = null; 

    try { 
     date = inputFormat.parse(s); 
     str = outputFormat.format(date); 
    } catch (ParseException e) { 
     e.printStackTrace(); 
    } 
    return str; 
} 
0

können Sie meine verwenden JavaScript-Funktion, diese Aufgabe von der Client-Seite zu tun:

function formatDate(dateString) { 
    var date = new Date("2017-07-20 00:00:00"), 
    dd = date.getDate(), 
    mm = date.getMonth() + 1, 
    yyyy = date.getFullYear(); 
    mm = mm < 10 ? '0' + mm : mm; 
    return dd + '-' + mm +'-' + yyyy; 
} 

Aufruf:

var dateStr = formatDatum ("2017-07-20 00:00:00");

demo

Verwandte Themen