/**
* 获取某年某月某日从开始到当天结束的时间 参数number 0.本月, 1.上月, 2.上上月. 类推.当前日期减月分基数.
*<功能简述>
*<功能详细描述>
* @return [参数说明]
* @return String [返回类型说明]
* @exception throws [异常类型] [异常说明]
* @see [类、类#方法、类#成员]
*/
private String lastMonthSetYearMonthDay(int year,int month,int day, int number){
Calendar calendar = Calendar.getInstance();//创建日历对象
calendar.set(year, month-1, day - number, 0, 0, 0);
//把日期转换为String.
String endTimeDate = TimeTools.getString(calendar.getTime());
String beginTime = endTimeDate + " 00:00:00";
String endTime = endTimeDate + " 23:59:59";
return beginTime+","+endTime;
}
/**
* 获取上周第一天到上周最后一天的日期(带时间),传入参数.0为上周,1为上上周.
*<功能简述>
*<功能详细描述>
* @return [参数说明]
* @return String [返回类型说明]
* @exception throws [异常类型] [异常说明]
* @see [类、类#方法、类#成员]
*/
private String lastWeekToLastDayLastWeek(int number){
//创建日历对象
Calendar calendar = Calendar.getInstance();
// 取得本周一
calendar.set(calendar.get(Calendar.YEAR), calendar.get(Calendar.MONTH),calendar.get(Calendar.DAY_OF_MONTH), 0, 0, 0);
calendar.setFirstDayOfWeek(Calendar.MONDAY);
calendar.set(Calendar.DAY_OF_WEEK, Calendar.MONDAY);
//取得上周日时间
String endDate = TimeTools.getString(new Date(calendar.getTime().getTime() - (number*(7 * 24 * 60 * 60 * 1000) + (24 * 60 * 60 * 1000))));
//取得上周一日期
String beginDate = TimeTools.getString(new Date(calendar.getTime().getTime() - (number*(7 * 24 * 60 * 60 * 1000) + (7 * 24 * 60 * 60 * 1000))));
//取得开始时间.
String beginTime = beginDate + " 00:00:00";
String endTime = endDate + " 23:59:59";
return beginTime+","+endTime;
}
/**
* 获取某年某月从开始到当月结束的时间 参数number 0.本月, 1.上月, 2.上上月. 类推.当前日期减月分基数.
*<功能简述>
*<功能详细描述>
* @return [参数说明]
* @return String [返回类型说明]
* @exception throws [异常类型] [异常说明]
* @see [类、类#方法、类#成员]
*/
private String lastMonthSetYearMonth(int year,int month,int number){
//创建日历对象
Calendar calendar = Calendar.getInstance();
calendar.set(Calendar.YEAR, year);
calendar.set(Calendar.MONTH, month - number);
//设计日期为本月第一天.
calendar.set(Calendar.DAY_OF_MONTH,calendar.getActualMinimum(Calendar.DAY_OF_MONTH)-1);
//把日期转换为String.
String endTimeDate = TimeTools.getString(calendar.getTime());
String endTime = endTimeDate + " 23:59:59";
//获取本月开始时间.
String beginTime = endTimeDate.substring(0,endTimeDate.lastIndexOf("-")) + "-01 00:00:00";
return beginTime+","+endTime;
}
/**
* 获取昨天开始时间到最后结束时间 参数为0, 为今天0, 1为昨天. 类推.当前日期减月分基数
*<功能简述>
*<功能详细描述>
* @return [参数说明]
* @return String [返回类型说明]
* @exception throws [异常类型] [异常说明]
* @see [类、类#方法、类#成员]
*/
private String laseDayFristTimeAndEndTime(int number){
Calendar calendar = Calendar.getInstance();
calendar.set(Calendar.DAY_OF_MONTH,calendar.get(Calendar.DAY_OF_MONTH) - number);
//或取当前时间
String DateTime = TimeTools.getString(calendar.getTime());
String beginTime = DateTime + " 00:00:00";
String endTime = DateTime + " 23:59:59";
return beginTime+","+endTime;
}
/**
* 获取上个月第一天到最后一天的日期(带时间) 参数为0, 为上一月, 1为上上月. 类推.当前日期减月分基数.
*<功能简述>
*<功能详细描述>
* @return [参数说明]
* @return String [返回类型说明]
* @exception throws [异常类型] [异常说明]
* @see [类、类#方法、类#成员]
*/
private String lastMonth(int number){
//创建日历对象
Calendar calendar = Calendar.getInstance();
calendar.set(Calendar.MONTH, calendar.get(Calendar.MONTH) - number);
//设计日期为本月第一天.
calendar.set(Calendar.DAY_OF_MONTH,calendar.getActualMinimum(Calendar.DAY_OF_MONTH)-1);
//把日期转换为String.
String endTimeDate = TimeTools.getString(calendar.getTime());
String endTime = endTimeDate + " 23:59:59";
//获取本月开始时间.
String beginTime = endTimeDate.substring(0,endTimeDate.lastIndexOf("-")) + "-01 00:00:00";
return beginTime + "," + endTime;
}
/**
* 获取上周第一天到上周最后一天的日期(带时间)
*<功能简述>
*<功能详细描述>
* @return [参数说明]
* @return String [返回类型说明]
* @exception throws [异常类型] [异常说明]
* @see [类、类#方法、类#成员]
*/
private String lastWeekToLastDayLastWeek(){
//创建日历对象
Calendar calendar = Calendar.getInstance();
// 取得本周一
calendar.set(calendar.get(Calendar.YEAR), calendar.get(Calendar.MONTH),calendar.get(Calendar.DAY_OF_MONTH), 0, 0, 0);
calendar.setFirstDayOfWeek(Calendar.MONDAY);
calendar.set(Calendar.DAY_OF_WEEK, Calendar.MONDAY);
//取得上周日时间
String endDate = TimeTools.getString(new Date(calendar.getTime().getTime() - (24 * 60 * 60 * 1000)));
//取得上周一日期
String beginDate = TimeTools.getString(new Date(calendar.getTime().getTime() - (7 * 24 * 60 * 60 * 1000)));
//取得开始时间.
String beginTime = beginDate + " 00:00:00";
String endTime = endDate + " 23:59:59";
//把日期转换为String.
return beginTime+","+endTime;
}
/**
* 获取今天开始时间到最后结束时间
*<功能简述>
*<功能详细描述>
* @return [参数说明]
* @return String [返回类型说明]
* @exception throws [异常类型] [异常说明]
* @see [类、类#方法、类#成员]
*/
private String thisDayFristTimeAndEndTime(){
Calendar calendar = Calendar.getInstance();
//或取当前时间
String DateTime = TimeTools.getString(calendar.getTime());
String beginTime = DateTime + " 00:00:00";
String endTime = DateTime + " 23:59:59";
return beginTime+","+endTime;
}
/**
* 获取昨天开始时间到最后结束时间
*<功能简述>
*<功能详细描述>
* @return [参数说明]
* @return String [返回类型说明]
* @exception throws [异常类型] [异常说明]
* @see [类、类#方法、类#成员]
*/
private String laseDayFristTimeAndEndTime(){
Calendar calendar = Calendar.getInstance();
calendar.set(Calendar.DAY_OF_MONTH,calendar.get(Calendar.DAY_OF_MONTH)-1);
//或取当前时间
String DateTime = TimeTools.getString(calendar.getTime());
String beginTime = DateTime + " 00:00:00";
String endTime = DateTime + " 23:59:59";
return beginTime+","+endTime;
}
/**
* 获取上月一号到上月最后一天的日期(带时间)
*<功能简述>
*<功能详细描述>
* @return [参数说明]
* @return String [返回类型说明]
* @exception throws [异常类型] [异常说明]
* @see [类、类#方法、类#成员]
*/
private String lastMonthToLastDay(){
Calendar calendar = Calendar.getInstance();
//设计日期为本月第一天.
calendar.set(Calendar.DAY_OF_MONTH,calendar.getActualMinimum(Calendar.DAY_OF_MONTH)-1);
//把日期转换为String.
String endTimeDate = TimeTools.getString(calendar.getTime());
String endTime = endTimeDate + " 23:59:59";
//获取本月开始时间.
String beginTime = endTimeDate.substring(0,endTimeDate.lastIndexOf("-")) + "-01 00:00:00";
return beginTime+","+endTime;
}
/**
* 获取本月一号到当天的日期(带时间)
*<功能简述>
*<功能详细描述>
* @return [参数说明]
* @return String [返回类型说明]
* @exception throws [异常类型] [异常说明]
* @see [类、类#方法、类#成员]
*/
private String thisMonthToLastDay(){
//创建日历对象
Calendar calendar = Calendar.getInstance();
//设计日期为本月最后一天.
calendar.set(Calendar.DAY_OF_MONTH,calendar.getActualMinimum(Calendar.DAY_OF_MONTH));
//把日期转换为String.
String endTimeDate = TimeTools.getString(calendar.getTime());
String beginTime = endTimeDate + " 00:00:00";
String endTime = TimeTools.now() + " 23:59:59";
return beginTime+","+endTime;
}
/**
* 获取本周第一天到本周最后一天的日期(带时间)
*<功能简述>
*<功能详细描述>
* @return [参数说明]
* @return String [返回类型说明]
* @exception throws [异常类型] [异常说明]
* @see [类、类#方法、类#成员]
*/
private String thisWeekToThisWeekLastDay(){
Calendar calendar = Calendar.getInstance();
// 取得本周一
calendar.set(calendar.get(Calendar.YEAR), calendar.get(Calendar.MONTH),calendar.get(Calendar.DAY_OF_MONTH), 0, 0, 0);
calendar.setFirstDayOfWeek(Calendar.MONDAY);
calendar.set(Calendar.DAY_OF_WEEK, Calendar.MONDAY);
String beginDate = TimeTools.getString(calendar.getTime());
// 取得本周日
String endDate = TimeTools.getString(new Date(calendar.getTime().getTime() + (6 * 24 * 60 * 60 * 1000)));
//取得开始时间.
String beginTime = beginDate + " 00:00:00";
String endTime = endDate + " 23:59:59";
return beginTime+","+endTime;
}
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
/**
* 从2011年9月2日9点.每过15分种输出一次时间
*<功能简述>
*<功能详细描述>
* @return String [返回类型说明]
* @exception throws [异常类型] [异常说明]
* @see [类、类#方法、类#成员]
*/
public class DateTest {
public static void main(String[] args) {
Calendar calendar = Calendar.getInstance();//创建日历对象
calendar.set(2011, 10, 2, 9, 30, 0); //设置时间.
while(System.currentTimeMillis() >= calendar.getTimeInMillis()){
//设置时间. 15分钟.
calendar.setTimeInMillis(calendar.getTimeInMillis() + (1000 * 60 * 15));
String time = getString(calendar.getTime());
System.out.println(time);
}
}
public static String getString(Date date) {
String dateString = "";
if (date == null){
return dateString;
}
try {
SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
dateString = df.format(date);
} catch (Exception e) {
dateString = "";
}
return dateString;
}
}