Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/performance/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 从服务器api获取日期并转换其格式?_Android_Date_Android Developer Api - Fatal编程技术网

Android 从服务器api获取日期并转换其格式?

Android 从服务器api获取日期并转换其格式?,android,date,android-developer-api,Android,Date,Android Developer Api,我目前正在解析来自PHP服务器api的日期,来自api的日期是“1970-04-22”,现在我需要将该日期显示为“04-22-1970”。我尝试了以下代码,但它没有显示确切的格式 String date = jsonObject.optString("date"); // output is "1970-04-22" SimpleDateFormat spf=new SimpleDateFormat("MMM, dd,yyyy hh:mm:ss aaa"); Date newDate=spf.p

我目前正在解析来自PHP服务器api的日期,来自api的日期是“1970-04-22”,现在我需要将该日期显示为“04-22-1970”。我尝试了以下代码,但它没有显示确切的格式

String date = jsonObject.optString("date"); // output is "1970-04-22"
SimpleDateFormat spf=new SimpleDateFormat("MMM, dd,yyyy hh:mm:ss aaa");
Date newDate=spf.parse(date);
spf= new SimpleDateFormat("MMM dd yyyy");
date = spf.format(newDate);
Log.e("date", String.valueOf(date));

在这些情况下,您必须首先将现有格式转换为日期,然后根据需要将日期格式转换为字符串。

它向您显示了什么?给我们看看log@Selvin哎呀!!我贴错了。我已经编辑了实际代码。你能看看吗!谢谢没关系。。。它仍然是错误的格式。。。MMM是一个月,由3个字母组成。。。你的“1970-04-22”不包含它,它也不包含“,”或“小时、分钟或秒…”。。。再一次,你要问自己“1970-04-22”的格式是什么?年份是4位数字,破折号,月份是2位数字,破折号,天是2位数字
String tempDate = "1970-04-22";
        SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd", Locale.getDefault());
        Date date1=null;
        try {
            date1 = simpleDateFormat.parse(tempDate);

        } catch (ParseException e) {
            e.printStackTrace();
        }
        SimpleDateFormat newformat = new SimpleDateFormat("dd-MM-yyyy", Locale.getDefault());
        String dateInReqFormat = newformat.format(date1);