本文目錄一覽:
- 1、java中如何得到本周時間
- 2、java 獲得本周一到周五的日期
- 3、java怎麼獲取本周一到周末時間
- 4、java中如何計算本周開始和結束的日期
- 5、java 如何獲取 上周一日期,上周末日期,本周一日期。
- 6、java 獲取當前日期時間和本周的星期一的日期時間?
java中如何得到本周時間
import java.util.*;
public class DateTest {
public DateTest(){
Calendar c = Calendar.getInstance();
int weekday = c.get(7)-1;
c.add(5,-weekday);
System.out.println(“本周開始時間:”+c.getTime());
c.add(5,6);
System.out.println(“本周開始結束:”+c.getTime());
}
public static void main(String[] args) {
new DateTest();
}
}
java 獲得本周一到周五的日期
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.Calendar;
public class WorkDay {
public static void main(String[] args) {
SimpleDateFormat dateFormat = new SimpleDateFormat(“yyyy-MM-dd E”);
for (Date date : getWeekDay()) {
System.out.println(dateFormat.format(date));
}
}
public static Date[] getWeekDay() {
Calendar calendar = Calendar.getInstance();
while (calendar.get(Calendar.DAY_OF_WEEK) != Calendar.MONDAY) {
calendar.add(Calendar.DAY_OF_WEEK, -1);
}
Date[] dates = new Date[5];
for (int i = 0; i lt; 5; i++) {
dates[i] = calendar.getTime();
calendar.add(Calendar.DATE, 1);
}
return dates;
}
}
如果每周指的是從星期一開始,那麼這個程序可以達到你的要求。
如果每周指得是從星期日開始,那麼請說明,我再修改。
java怎麼獲取本周一到周末時間
/**
* 獲取上周五時間
*/
public Date lastFirday() {
//作用防止周日得到本周日期
Calendar calendar = Calendar.getInstance();
while (calendar.get(Calendar.DAY_OF_WEEK) != Calendar.MONDAY) {
calendar.add(Calendar.DAY_OF_WEEK, -1);
}
int dayOfWeek = calendar.get(Calendar.DAY_OF_WEEK) – 1;
int offset = 7 – dayOfWeek;
calendar.add(Calendar.DATE, offset – 9);
return DateTimeUtil.getFirstDayOfWeek(calendar.getTime(), 6);//這是從上周日開始數的到本周五為6
}
/**
* 獲取上周一時間
*/
public Date lastMonday() {
Calendar calendar = Calendar.getInstance();
while (calendar.get(Calendar.DAY_OF_WEEK) != Calendar.MONDAY) {
calendar.add(Calendar.DAY_OF_WEEK, -1);
}
int dayOfWeek = calendar.get(Calendar.DAY_OF_WEEK) – 1;
int offset = 1 – dayOfWeek;
calendar.add(Calendar.DATE, offset – 7);
return DateTimeUtil.getFirstDayOfWeek(calendar.getTime(), 2);
}
參考
請採納,謝謝
java中如何計算本周開始和結束的日期
思路:首先是獲取該月的實際天數,然後從1號遍歷直至該月最後一天,利用Calendar類找出該日是一周中的第幾天,
(1)若該日是周日,則視為一周結束,並用該日期減去6找到該周的開始日期,若相減結果小於等於1,則說明該周起始日期應該是本月1號。
(1)若該日不是周日,且是該月最後一天,則應該在上面計算的基礎上再加一周,視月末為該周的結束日,該周起始日期應為改日期減去改日
在一周中的位置加2,例如:2013-09-30號是周一,則視為9月份中的第六周,開始日期是30-2+2
提示:Calendar 類中視周日為一周的開始,值是1
示例代碼:
[java] view plain copy
public static void printfWeeks(String date) throws Exception {
// String date = “2013-09”;
DateFormat dateFormat = new SimpleDateFormat(“yyyy-MM”);
Date date1 = dateFormat.parse(date);
Calendar calendar = new GregorianCalendar();
calendar.setTime(date1);
int days = calendar.getActualMaximum(Calendar.DAY_OF_MONTH);
System.out.println(“days:” + days);
int count = 0;
for (int i = 1; i = days; i++) {
DateFormat dateFormat1 = new SimpleDateFormat(“yyyy-MM-dd”);
Date date2 = dateFormat1.parse(date + “-” + i);
calendar.clear();
calendar.setTime(date2);
int k = new Integer(calendar.get(Calendar.DAY_OF_WEEK));
if (k == 1) {// 若當天是周日
count++;
System.out.println(“———————————–“);
System.out.println(“第” + count + “周”);
if (i – 6 = 1) {
System.out.println(“本周開始日期:” + date + “-” + 1);
} else {
System.out.println(“本周開始日期:” + date + “-” + (i – 6));
}
System.out.println(“本周結束日期:” + date + “-” + i);
System.out.println(“———————————–“);
}
if (k != 1 i == days) {// 若是本月最好一天,且不是周日
count++;
System.out.println(“———————————–“);
System.out.println(“第” + count + “周”);
System.out.println(“本周開始日期:” + date + “-” + (i – k + 2));
System.out.println(“本周結束日期:” + date + “-” + i);
System.out.println(“———————————–“);
}
}
}
測試代碼:
[java] view plain copy
public static void main(String[] args) throws Exception {
String s = “2013-“;
for (int i = 1; i = 12; i++) {
System.out.println(“*******************************************”);
System.out.println(“月份:” + i);
printfWeeks(s + i);
System.out.println(“*******************************************”);
}
// printfWeeks(s + 2);
}
java 如何獲取 上周一日期,上周末日期,本周一日期。
獲取本周一
public static Date getNowWeekMonday(Date date) {
Calendar cal = Calendar.getInstance();
cal.setTime(date);
cal.add(Calendar.DAY_OF_MONTH, -1); //解決周日會出現 併到下一周的情況
cal.set(Calendar.DAY_OF_WEEK, Calendar.MONDAY);
303 return cal.getTime();
}
獲取上周一
public static Date getLastWeekMonday(Date date) {
Date a = DateUtils.addDays(date, -1);
Calendar cal = Calendar.getInstance();
cal.setTime(a);
cal.add(Calendar.WEEK_OF_YEAR, -1);// 一周
cal.set(Calendar.DAY_OF_WEEK, Calendar.MONDAY);
return cal.getTime();
}
獲取上周日
public static Date getLastWeekSunday(Date date) {
Date a = DateUtils.addDays(date, -1);
Calendar cal = Calendar.getInstance();
cal.setTime(a);
cal.set(Calendar.DAY_OF_WEEK, 1);
return cal.getTime();
}
代碼裏面有用到 lapache.common-ang包 你需要下載下 就可以使用
java 獲取當前日期時間和本周的星期一的日期時間?
提倡了一下中文寫,…
static public void main(String 參數[]){
SimpleDateFormat 格式=new SimpleDateFormat(“y年M月d日 E H時m分s秒”,Locale.CHINA);
Calendar 日曆=Calendar.getInstance(Locale.CHINA);
//當前時間,貌似多餘,其實是為了所有可能的系統一致
日曆.setTimeInMillis(System.currentTimeMillis());
System.out.println(“當前時間:”+格式.format(日曆.getTime()));
日曆.set(Calendar.DAY_OF_WEEK, Calendar.MONDAY);
System.out.println(“周一時間:”+格式.format(日曆.getTime()));
}
===========
改到後天測了一下
輸出
當前時間:2011年8月31日 星期三 12時32分40秒
周一時間:2011年8月29日 星期一 12時32分40秒
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hk/n/249597.html