当前,我正在尝试将日期格式设置为特定格式:
这是我的返回日期的方法:
public Date createDate(int year, int month, int day) {
Calendar cal = Calendar.getInstance();
cal.set(Calendar.YEAR, year);
cal.set(Calendar.MONTH, month);
cal.set(Calendar.DAY_OF_MONTH, day);
cal.set(Calendar.HOUR_OF_DAY, 0);
cal.set(Calendar.MINUTE, 0);
cal.set(Calendar.SECOND, 0);
cal.set(Calendar.MILLISECOND, 0);
return sdf.format(cal. getTime());
}
我的格式:
private String myFormat = "MM/dd/yyyy"; //In which you need put here
private SimpleDateFormat sdf = new SimpleDateFormat(myFormat, Locale.US);
现在的问题是当我尝试使用sdf.format(cal.getTime());
它说这是不兼容的类型,因为当我尝试使用sdf.format时发现了一个字符串。
是否可以将日期格式转换为我想要的格式而无需将其转换为字符串?
答案 0 :(得分:0)
是的,您可以这样做 例如:
DateFormat dateFormat = new SimpleDateFormat(currFormat);
Date date = null;
// date conversion
try {
date = dateFormat.parse(dateTimeStr);
} catch (ParseException e) {
e.printStackTrace();
}
DateFormat outputFormat = new SimpleDateFormat(requiredFormat);
return outputFormat.format(date);
您必须先将字符串日期转换为日期格式,然后再对其进行格式化。
答案 1 :(得分:0)
SimpleDateFormat dateFormat = new SimpleDateFormat("MM-dd-yyyy");
Date c = Calendar.getInstance().getTime();
dateFormat.format(c);
您可以使用此代码段获取答案。