本文目錄一覽:
- 1、Java 由今天往前推7天怎麼算
- 2、java scrpit 獲取當前日期和前七天的日期
- 3、請問Java如何得到七天以前的日期
- 4、java 獲取前一周星期天的日期,例如今天2013-8-1,上一周星期日就是2013-7-28
- 5、運用JAVA 語法計算出,以當前日期時間點,打印出頭七天的日期,並且按照周一至周日的格式輸出
- 6、java怎樣獲得當前時間的前幾天
Java 由今天往前推7天怎麼算
public static void main(String[] args) {
//獲取當前時間毫秒數
Date dt= new Date();
long time= dt.getTime();
//獲取7天的毫秒數
long sevenTime = 7*24*60*60*1000;
//當前時間毫秒數-7天的毫秒數=7天之間那天的毫秒數
long times = time – sevenTime;
//將毫秒數轉日期
Date dat=new Date(times);
GregorianCalendar gc = new GregorianCalendar();
gc.setTime(dat);
java.text.SimpleDateFormat format = new java.text.SimpleDateFormat(“yyyy-MM-dd hh:mm:ss”);
String sb=format.format(gc.getTime());
System.out.println(sb);
}
如果直接對日進行加減 有可能是 每月七號之前 那麼就還需要做許多的判斷是否月份需要進行減去,當月是 天數等等,我覺得直接換算為毫秒數就能直接解決很多問題。
java scrpit 獲取當前日期和前七天的日期
var d = new Date();
這個不就是當前日期了嗎 重新設置天數-7不就是7天前的日期了嗎
請問Java如何得到七天以前的日期
常規寫法是下面這樣寫的。
我們在獲得指定時間倒退或者延遲天數的時候,
JAVA 建議使用 Calendar 這個對象來處理。
下面是我寫的類 和 測試方法 :
—————–
import java.text.DateFormat;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
public class DateTest {
/**
* 請用Java編寫一段程序打印輸出當前日期減去7天的日期,格式為1-31-1900。
* @param args
* @throws ParseException
*/
public static void main(String[] args) throws ParseException {
DateTest dateTest = new DateTest();
DateFormat df = new SimpleDateFormat(“MM-dd-yyyy”);
//假象一個指定時間 1999年1月31日
Date before7Day = dateTest.getDate(“1-31-1999”, 7);
System.out.println(“獲得的新的時間是 : “+df.format(before7Day));
}
/**
* 根據輸入的日期字符串 和 提前天數 ,
* 獲得 指定日期提前幾天的日期對象
* @param dateString 日期對象 ,格式如 1-31-1900
* @param lazyDays 倒推的天數
* @return 指定日期倒推指定天數後的日期對象
* @throws ParseException
*/
public Date getDate(String dateString , int beforeDays) throws ParseException{
DateFormat dateFormat = new SimpleDateFormat(“MM-dd-yyyy”);
Date inputDate = dateFormat.parse(dateString);
Calendar cal = Calendar.getInstance();
cal.setTime(inputDate);
int inputDayOfYear = cal.get(Calendar.DAY_OF_YEAR);
cal.set(Calendar.DAY_OF_YEAR , inputDayOfYear-beforeDays );
return cal.getTime();
}
}
—————–
輸出結果是 :
獲得的新的時間是 : 01-24-1999
java 獲取前一周星期天的日期,例如今天2013-8-1,上一周星期日就是2013-7-28
import java.text.DateFormat;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
public class TestDate {
public static void main(String[] args) {
// 設置當前日期
Calendar aCalendar = Calendar.getInstance();
aCalendar.setTime(new Date());
// 取當前日期是星期幾(week:星期幾)
int week = aCalendar.get(Calendar.DAY_OF_WEEK);
if (week == 1) {
week = 7;
} else if (week == 0) {
week = 6;
} else {
week -= 1;
}
// 取距離當前日期最近的周日與當前日期相差的天數(count:相差的天數。正數:之後的周日,負數:之前的周日)
int count = 0;
if (week = 3) {
count = -week;
} else if (week = 4) {
count = 7 – week;
}
// 獲取距離當前日期最近的周日日期
DateFormat df = new SimpleDateFormat(“yyyy-MM-dd EE”);
Calendar c = Calendar.getInstance();
c.add(Calendar.DAY_OF_WEEK, count);
// 格式化並打印出距離當前日期最近的周日日期
System.out.println(“當前日期: ” + df.format(aCalendar.getTime()) + ‘\n’ + “最近周日: ” + df.format(c.getTime()));
}
}
運用JAVA 語法計算出,以當前日期時間點,打印出頭七天的日期,並且按照周一至周日的格式輸出
private void print() {
int intervalTime = 1;//與中國星期計算方式的差值
int weekDay = 7;//一周
Calendar calendar = Calendar.getInstance();
SimpleDateFormat dateFormat = new SimpleDateFormat(“E:yyyy-MM-dd”);
int beginDayOfWeek = calendar.getActualMinimum(Calendar.DAY_OF_WEEK) + intervalTime;
calendar.set(Calendar.DAY_OF_WEEK, beginDayOfWeek);
for(int i = 0 ; i weekDay; i++) {
System.out.println(dateFormat.format(calendar.getTime()));
calendar.add(Calendar.DATE, 1);
}
}
java怎樣獲得當前時間的前幾天
1.java中關於獲取時間的所有方式如下,
Date dNow = new Date(); //當前時間
Date dBefore = new Date();
Calendar calendar = Calendar.getInstance(); //得到日曆
calendar.setTime(dNow);//把當前時間賦給日曆
calendar.add(Calendar.DAY_OF_MONTH, -1); //設置為前一天
dBefore = calendar.getTime(); //得到前一天的時間
SimpleDateFormat sdf=new SimpleDateFormat(”yyyy-MM-ddHH:mm:ss”);//設置時間格式
String defaultStartDate = sdf.format(dBefore); //格式化前一天
String defaultEndDate = sdf.format(dNow); //格式化當前時間
System.out.println(”前一天的時間是:” + defaultStartDate);
System.out.println(”生成的時間是:” + defaultEndDate);
2.如上方式能得到當前時間的前一天時間,同理,可以得到前一天的前一天,那麼,前幾天的時間都可以這樣獲得,如果覺得方案還是不可行,可以使用第三方的日曆組件來獲得更加準確的全年三百六十五天的時間
另有:
Calendar 與 Date 的轉換:
Calendar calendar = Calendar.getInstance();
// 從一個 Calendar 對象中獲取 Date 對象
Date date = calendar.getTime();
// 將 Date 對象反應到一個 Calendar 對象中,
// 先獲得一個實例,然後設置 Date 對象
calendar.setTime(date);
月份的起始值為0而不是1,所以要設置八月時,我們用7而不是8.
calendar.set(Calendar.MONTH, 7);
計算2000-01-01是星期幾
calendar.get(calendar.DAY_OF_WEEK )
3.實例代碼測試如下
Java代碼
import Java.util.*;
public class ShowDate {
public static void main(String[] args) {
Calendar calendar = new GregorianCalendar();
Date trialTime = new Date();
calendar.setTime(trialTime);
// print out a bunch of interesting things
System.out.println(”ERA: ” + calendar.get(Calendar.ERA));
System.out.println(”YEAR: ” + calendar.get(Calendar.YEAR));
System.out.println(”MONTH: ” + calendar.get(Calendar.MONTH));
System.out.println(”WEEK_OF_YEAR: ” + calendar.get(Calendar.WEEK_OF_YEAR));
System.out.println(”WEEK_OF_MONTH: ” + calendar.get(Calendar.WEEK_OF_MONTH));
System.out.println(”DATE: ” + calendar.get(Calendar.DATE));
System.out.println(”DAY_OF_MONTH: ” + calendar.get(Calendar.DAY_OF_MONTH));
System.out.println(”DAY_OF_YEAR: ” + calendar.get(Calendar.DAY_OF_YEAR));
System.out.println(”DAY_OF_WEEK: ” + calendar.get(Calendar.DAY_OF_WEEK));
System.out.println(”DAY_OF_WEEK_IN_MONTH: ” + calendar.get(Calendar.DAY_OF_WEEK_IN_MONTH));
System.out.println(”AM_PM: ” + calendar.get(Calendar.AM_PM));
System.out.println(”HOUR: ” + calendar.get(Calendar.HOUR));
System.out.println(”HOUR_OF_DAY: ” + calendar.get(Calendar.HOUR_OF_DAY));
System.out.println(”MINUTE: ” + calendar.get(Calendar.MINUTE));
System.out.println(”SECOND: ” + calendar.get(Calendar.SECOND));
System.out.println(”MILLISECOND: ” + calendar.get(Calendar.MILLISECOND));
System.out.println(”ZONE_OFFSET: ” + (calendar.get(Calendar.ZONE_OFFSET)/(60*60*1000)));
System.out.println(”DST_OFFSET: ” + (calendar.get(Calendar.DST_OFFSET)/(60*60*1000)));
System.out.println(”Current Time, with hour reset to 3″);
calendar.clear(Calendar.HOUR_OF_DAY); // so doesn’t override
calendar.set(Calendar.HOUR, 3);
System.out.println(”ERA: ” + calendar.get(Calendar.ERA));
System.out.println(”YEAR: ” + calendar.get(Calendar.YEAR));
System.out.println(”MONTH: ” + calendar.get(Calendar.MONTH));
System.out.println(”WEEK_OF_YEAR: ” + calendar.get(Calendar.WEEK_OF_YEAR));
System.out.println(”WEEK_OF_MONTH: ” + calendar.get(Calendar.WEEK_OF_MONTH));
System.out.println(”DATE: ” + calendar.get(Calendar.DATE));
System.out.println(”DAY_OF_MONTH: ” + calendar.get(Calendar.DAY_OF_MONTH));
System.out.println(”DAY_OF_YEAR: ” + calendar.get(Calendar.DAY_OF_YEAR));
System.out.println(”DAY_OF_WEEK: ” + calendar.get(Calendar.DAY_OF_WEEK));
System.out.println(”DAY_OF_WEEK_IN_MONTH: ” + calendar.get(Calendar.DAY_OF_WEEK_IN_MONTH));
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hk/n/230766.html