我需要计算一个网站的日期。
case R.id.menu_next:
// Toast message
Toast.makeText(this, "Morgen",
Toast.LENGTH_SHORT).show();
// Calculate Date
Calendar cal=Calendar.getInstance();
int currentDay=cal.get(Calendar.DAY_OF_MONTH);
//Set the date to 1 day
cal.set(Calendar.DAY_OF_MONTH, currentDay+1);
// Set URL
mWebview .loadUrl("http://divers.ommelandercollege.nl/webportalen/dagrooster.php?datum="+cal.getTime());
setContentView(mWebview );
break;
使用此代码,按下该按钮时,第二天将始终加载。 但问题是,当它是星期五或星期六,你按下它需要加载星期一的按钮,但它仍然在第二天加载。我该如何解决这个问题?
我需要在没有时间的情况下将日期转换为22-6-2013格式,因为网站需要: http://divers.ommelandercollege.nl/webportalen/dagrooster.php?datum=21-6-2013 (DD-MM-YYY)
答案 0 :(得分:1)
在检查日期不是星期六或星期日时增加日期。 do-while
循环将确保增量至少发生一次。
do {
cal.add(Calendar.DATE, 1);
} while (cal.get(Calendar.DAY_OF_WEEK) == Calendar.SATURDAY ||
cal.get(Calendar.DAY_OF_WEEK) == Calendar.SUNDAY);
答案第二个问题:如何以这种格式输出日期:VRIJDAG 21 JUNI 2013
,使用SimpleDateFormat
:
String outputDate =
new SimpleDateFormat("EEEE dd MMM yyyy").format(cal.getTime())
答案 1 :(得分:1)
int dayOfWeek=Calendar.get(Calendar.DAY_OF_WEEK);
if(dayOfWeek==Calendar.FRIDAY){
cal.set(Calendar.DAY_OF_MONTH, currentDay+3);
}
else if(dayOfWeek==Calendar.SATURDAY){
cal.set(Calendar.DAY_OF_MONTH, currentDay+2);
}
else{
cal.set(Calendar.DAY_OF_MONTH, currentDay+1);
}