Android SimpleDateFormat, how to use it?

后端 未结 8 1036
清歌不尽
清歌不尽 2020-11-29 01:54

I am trying to use the Android SimpleDateFormat like this:

String _Date = \"2010-09-29 08:45:22\"
SimpleDateFormat fmt = new SimpleDateFormat(\"         


        
相关标签:
8条回答
  • 2020-11-29 02:18
    String _Date = "2010-09-29 08:45:22"
    SimpleDateFormat fmt = new SimpleDateFormat("yyyy-MM-dd");
    SimpleDateFormat fmt2 = new SimpleDateFormat("dd-MM-yyyy");
        try {
            Date date = fmt.parse(_Date);
            return fmt2.format(date);
        }
        catch(ParseException pe) {
    
            return "Date";    
        }
    

    try this.

    0 讨论(0)
  • 2020-11-29 02:24

    I assume you would like to reverse the date format?

    SimpleDateFormat can be used for parsing and formatting. You just need two formats, one that parses the string and the other that returns the desired print out:

    SimpleDateFormat fmt = new SimpleDateFormat("yyyy-MM-dd");
    Date date = fmt.parse(dateString);
    
    SimpleDateFormat fmtOut = new SimpleDateFormat("dd-MM-yyyy");
    return fmtOut.format(date);
    

    Since Java 8:

    DateTimeFormatter fmt = DateTimeFormatter.ofPattern("yyyy-MM-dd").withZone(ZoneOffset.UTC);
    TemporalAccessor date = fmt.parse(dateString);
    Instant time = Instant.from(date);
    
    DateTimeFormatter fmtOut = DateTimeFormatter.ofPattern("dd-MM-yyyy").withZone(ZoneOffset.UTC);
    return fmtOut.format(time);
    
    0 讨论(0)
  • 2020-11-29 02:24

    Below is all date formats available, read more doc here.

    Symbol  Meaning                Kind         Example
    D       day in year             Number        189
    E       day of week             Text          E/EE/EEE:Tue, EEEE:Tuesday, EEEEE:T
    F       day of week in month    Number        2 (2nd Wed in July)
    G       era designator          Text          AD
    H       hour in day (0-23)      Number        0
    K       hour in am/pm (0-11)    Number        0
    L       stand-alone month       Text          L:1 LL:01 LLL:Jan LLLL:January LLLLL:J
    M       month in year           Text          M:1 MM:01 MMM:Jan MMMM:January MMMMM:J
    S       fractional seconds      Number        978
    W       week in month           Number        2
    Z       time zone (RFC 822)     Time Zone     Z/ZZ/ZZZ:-0800 ZZZZ:GMT-08:00 ZZZZZ:-08:00
    a       am/pm marker            Text          PM
    c       stand-alone day of week Text          c/cc/ccc:Tue, cccc:Tuesday, ccccc:T
    d       day in month            Number        10
    h       hour in am/pm (1-12)    Number        12
    k       hour in day (1-24)      Number        24
    m       minute in hour          Number        30
    s       second in minute        Number        55
    w       week in year            Number        27
    G       era designator          Text          AD
    y       year                    Number        yy:10 y/yyy/yyyy:2010
    z       time zone               Time Zone     z/zz/zzz:PST zzzz:Pacific Standard 
    
    0 讨论(0)
  • 2020-11-29 02:25

    I think this Link might helps you

    OR

        Date date = Calendar.getInstance().getTime();
        //
        // Display a date in day, month, year format
        //
        DateFormat formatter = new SimpleDateFormat("dd/MM/yyyy");
        String today = formatter.format(date);
        System.out.println("Today : " + today);
    
    0 讨论(0)
  • 2020-11-29 02:25

    This worked for me...

    @SuppressLint("SimpleDateFormat")
    private void setTheDate() {
        long msTime = System.currentTimeMillis();
        Date curDateTime = new Date(msTime);
        SimpleDateFormat formatter = new SimpleDateFormat("MM'/'dd'/'y hh:mm");
        curDate = formatter.format(curDateTime);
        mDateText.setText("" + curDate);
    }
    
    0 讨论(0)
  • 2020-11-29 02:30

    If you looking for date, month and year separately

    or how to use letters from answer of heloisasim

        SimpleDateFormat day = new SimpleDateFormat("d");
        SimpleDateFormat month = new SimpleDateFormat("M");
        SimpleDateFormat year = new SimpleDateFormat("y");
    
        Date d = new Date();
        String dayS = day.format(d);
        String monthS = month.format(d);
        String yearS = year.format(d);
    
    0 讨论(0)
提交回复
热议问题