我有一个字符串Wed, 22 Aug 2012 06:29:31 +0530
这样,现在我想将此字符串转换为日期格式,我需要显示日期Wed, 22 Aug 2012
像这样并消除其他剩余的字符串?字符串到日期格式在j2me
我需要在我的LWUIT形式的屏幕
我有一个字符串Wed, 22 Aug 2012 06:29:31 +0530
这样,现在我想将此字符串转换为日期格式,我需要显示日期Wed, 22 Aug 2012
像这样并消除其他剩余的字符串?字符串到日期格式在j2me
我需要在我的LWUIT形式的屏幕
String date = "Wed, 22 Aug 2012 06:29:31 +0530";
String shortDate = date.substring(0, 16);
有在J2ME中没有具体的方法字符串转换为日期显示的日期。那么,那根本不可能是。
这不能被认为是一个答案,因为它是可能的,不能与预定义的方法,但有替代品 –
您需要使用方法java.util.Calendar
手工编写代码,我们做了一些格式化和本地化API在代号之一,所以你可以看看我们的参考代码或刚刚转会Codename One。
对于这个日期formate“date_posted”:“2012-04-19T16:45:33 + 01:00”我使用下面的代码。您可以根据自己的需求进行自定义。
try {
String dateString = date_posted;
String[] dateArray = Util.split(dateString, "T");
String[] date = Util.split(dateArray[0], "-");
String[] time = Util.split(dateArray[1], ":");
Calendar calStart = Calendar.getInstance();
calStart.set(Calendar.MONTH, Integer.parseInt(date[1]) - 1);
calStart.set(Calendar.DAY_OF_MONTH, Integer.parseInt(date[2]));
calStart.set(Calendar.YEAR, Integer.parseInt(date[0]));
calStart.set(Calendar.HOUR_OF_DAY, Integer.parseInt(time[0]));
calStart.set(Calendar.MINUTE, Integer.parseInt(time[1]));
calStart.set(Calendar.MILLISECOND, 0);
Date postDate = calStart.getTime();
post_time = postDate.getTime();
} catch (Exception ex) {
Logger.err("fromJSON", ex);
}
我用的是这样的:
String getDateString(Date date) {
Calendar calendar = Calendar.getInstance();
calendar.setTime(date);
int year = calendar.get(Calendar.YEAR);
int month = calendar.get(Calendar.MONTH);
int day = calendar.get(Calendar.DAY_OF_MONTH);
int hour = calendar.get(Calendar.HOUR_OF_DAY);
int minute = calendar.get(Calendar.MINUTE);
int second = calendar.get(Calendar.SECOND);
return new String(/*Any format you need*/);
}
它工作感谢:) – Axel
此不考虑国际化,只要日期是英文,它就会很好用 –
我同意@ShaiAlmog这不是最好的方法,但我只是根据问题需求提出了代码。 –