我正在处理Android应用程序,我正在保存并从ORMLITE获取日期。我使用SimpleDateFormat来格式化所需日期,但除了这种模式yyyy-MM-dd HH:mm
之外,它没有格式化它。我在服务器上显示所需日期和代码的当前日期如下:
try {//EEEE , MMMM dd , yyyy hh:mm a
SimpleDateFormat mDBSDF = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
if(cursor.getString(cursor.getColumnIndex("mLastMessageDate"))==null){//.equals("") ||cursor.getString(cursor.getColumnIndex("mLastMessageDate")).toString()==null){
mTxtLastMessageDate.setText("");
mTxtLastMessageLabel.setText("");
}else{
mTxtLastMessageDate.setText(mDBSDF.parse(cursor.getString(cursor.getColumnIndex("mLastMessageDate"))).toString());
}
}catch(Exception ex) {
ex.printStackTrace();
}
这是我的服务器日期:
2015-04-28 12:57:04.000297
使用上述格式后,我得到了这个:
Tue Apr 28 12:57:04 GMT+04:00 2015
我想要这样的模式:
Tuesday, April 28, 2015 1:00 pm
除了yyyy-MM-dd HH:mm
格式以外,即使我正在改变" - "到","没有任何错误,它无法正常工作
答案 0 :(得分:1)
SimpleDateFormat.parse(String)会返回Date
而不是格式化的String
。
答案 1 :(得分:0)
尝试使用此格式设置日期和时间...
localStorage.setItem(k, v);
答案 2 :(得分:0)
根据您的要求尝试这个。
输入日期为字符串
protected String dateFormat(String sqlDate) {
String strDate = "";
java.util.Date utilDate;
SimpleDateFormat sqlDateFormat = new SimpleDateFormat(
"yyyy-MM-dd HH:mm:ss");//input format
try {
Calendar calTempDate = Calendar.getInstance();
calTempDate.setFirstDayOfWeek(Calendar.MONDAY);
utilDate = sqlDateFormat.parse(sqlDate);
calTempDate.setTime(utilDate);
strDate = new SimpleDateFormat("EEEE MMMM dd,yyyy HH:mm a")
.format(calTempDate.getTime());//output format
} catch (Exception e) {
e.printStackTrace();
}
return strDate;
}
答案 3 :(得分:0)
您可以使用此代码找出解决方案。
SimpleDateFormat fromdateformate=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
try {
Date date=fromdateformate.parse("2015-04-28 12:57:04.000297");
SimpleDateFormat todtaeFormate=new SimpleDateFormat("EEEE MMMM yyyy hh:mm aa");
String finaldate= todtaeFormate.format(date);
} catch (ParseException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}