示例(Date) btDate.getTag() = 20140320;
如何从20140320减去一年,并将结果设为日期格式 例如,20140320结果= 20130320
答案 0 :(得分:1)
您可以使用以下自定义方法
private String getSubStractYear ( String date )
{
try
{
SimpleDateFormat sdf = new SimpleDateFormat ( "yyyyMMdd" );
Date myDate = sdf.parse(date);
Calendar calendar = Calendar.getInstance();
calendar.setTime(myDate);
calendar.add(Calendar.YEAR , -1 );
return ( sdf.format( calendar.getTime() ) );
}
catch ( Exception e )
{
e.printStackTrace();
return "";
}
}
输入:20140320
产量:20130320
答案 1 :(得分:-1)
在Java 8中,您可以使用新的日期/时间类:
你的职能:
private String substractYears(final String dateFrom, final int yearsToSubstract) {
final DateTimeFormatter dtf = DateTimeFormatter.ofPattern("yyyyMMdd");
final LocalDate date = LocalDate.parse(dateFrom, dtf);
return dtf.format(date.minusYears(yearsToSubstract));
}
使用示例:
System.out.printf("%s\n", substractYears("20140302", 1));
这将打印:20130302