更改日期和时间格式Android
我从API获取日期和时间为2017-01-15T21:30:05Z
。我想将日期更改为JAN 15,2017
,时间更改为9:30 pm
格式。更改日期和时间格式Android
这是我没有格式化的代码。
News currentNews = newsList.get(position);
String time=currentNews.getTime();
String[] parts=time.split("T");
parts[1]=parts[1].replace("Z","");
dateView.setText(parts[0]);
timeView.setText(parts[1]);
您可以使用le class SimpleDateFormat来分析您的字符串。然后,您可以从中获取日期。
下面是一个例子,如果使用:Java SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss'Z'") gives timezone as IST
有关详细信息,下面是官方文档:https://docs.oracle.com/javase/7/docs/api/java/text/SimpleDateFormat.html
您需要使用SimpleDateFormat
和Date
对象。您需要创建1个初始样式的SimpleDateFormat,1个需要的样式。然后创建一个Date对象,并将从API日期接收到的解析到这个对象。然后用第二个SimpleDateFormat打印出来。
试试这个代码:
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss'Z'");
SimpleDateFormat sdf2 = new SimpleDateFormat("MMM dd, yyyy h:mm a");
try {
Date d = sdf.parse("2017-01-15T21:30:05Z");
System.out.println(d); // date in INITIAL format
System.out.println(sdf2.format(d)); // date in DESIRED format
} catch (ParseException e) {
e.printStackTrace();
}
非常感谢,代码工作完美。 –
@priyanshugoyal很高兴听到!考虑接受和upvoting我的答案:)快乐的编码! – Marat
这些问题已经有很多。你可以在这里看到[链接](http://stackoverflow.com/questions/8654990/how-can-i-get-当前日期在Android?rq = 1) – ku4irka