Android将日期格式从字符串更改为日期和时间分隔

时间:2019-01-27 06:04:41

标签: java android datetime date-formatting time-format

我正在从API 2019-01-22T04:38:22Z获取这种格式的日期,我希望将日期和时间以以下格式31/01/201923:59分开。

我是Java的新手,所以无法弄清楚应该如何使用它以及应该使用哪种类或方法。我知道一点回合SimpleDateFormat

任何建议或想法都会受到赞赏。

2 个答案:

答案 0 :(得分:2)

尝试使用此行代码将字符串转换为日期并获取日期和时间

代码

  String dtStart = "2019-01-27T09:27:37Z";
    SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss'Z'");
    try {
        Date date = format.parse(dtStart);
        System.out.println(date);
        SimpleDateFormat sdf = new SimpleDateFormat("yyyy/MM/dd");
        SimpleDateFormat sdf1 = new SimpleDateFormat("HH:mm");

        String date1 = sdf.format(date);
        String time= sdf1.format(date);
        Log.e("check_date_time",""+date1+"=="+time);
    } catch (ParseException e) {
        e.printStackTrace();
    }

输出

2019/01/27 09:27

希望它对您有用

答案 1 :(得分:2)

下面提供了一个代码示例,它提供了一种更强大的方法来完成此任务。

    String initialStringDate = "2019-01-27T09:27:37Z";
    Locale us = new Locale("US");
    SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss'Z'", us);
    try {
        Date date = format.parse(initialStringDate);
        String stringDate = new SimpleDateFormat("yyyy/MM/dd", us).format(date);
        String stringTime = new SimpleDateFormat("HH:mm", us).format(date);

        String finalDateTime = stringDate.concat(" ").concat(stringTime);

        Log.i("Date_and_Time", "" + finalDateTime);
    } catch (ParseException e) {
        e.printStackTrace();
    }

注意:使用上面提供的代码,您甚至可以本地化日期和时间。