如果您对js获取自然周/自然月/自然日开始结束时间戳感兴趣,那么本文将是一篇不错的选择,我们将为您详在本文中,您将会了解到关于js获取自然周/自然月/自然日开始结束时间戳的详细内容,我们还将为您解答j
如果您对js 获取自然周 / 自然月 / 自然日开始结束时间戳感兴趣,那么本文将是一篇不错的选择,我们将为您详在本文中,您将会了解到关于js 获取自然周 / 自然月 / 自然日开始结束时间戳的详细内容,我们还将为您解答js获取当前自然周的相关问题,并且为您提供关于ASP.NET 获取自然周、自然月等时间段、C# 自然周,月,季度计算。、iView 开始结束时间组件、java 使用Calendar类计算每月有多少自然周,并输出每周的开始和结束日期的有价值信息。
本文目录一览:- js 获取自然周 / 自然月 / 自然日开始结束时间戳(js获取当前自然周)
- ASP.NET 获取自然周、自然月等时间段
- C# 自然周,月,季度计算。
- iView 开始结束时间组件
- java 使用Calendar类计算每月有多少自然周,并输出每周的开始和结束日期
js 获取自然周 / 自然月 / 自然日开始结束时间戳(js获取当前自然周)
JavaScript 封装获取自然周、自然月、自然日、开始结束时间戳
/**
* 获取自然月开始结束时间
* @param {*} year
* @param {*} month
*/
function getMonthBeginEnd(year, month) {
if (~~year === 0 || ~~month === 0) {
throw new Error(''年月参数错误'');
}
const result = {begin: 0, end: 0};
const target = new Date();
target.setFullYear(year);
target.setMonth(month - 1);
target.setDate(1);
target.setHours(0);
target.setMinutes(0);
target.setSeconds(0);
target.setMilliseconds(0);
result.begin = target.getTime();
const now = new Date();
if (target.getFullYear() + target.getMonth() >= now.getFullYear() + now.getMonth()) {
result.end = now.getTime();
console.log(result);
console.log(new Date(result.begin), new Date(result.end));
return result;
}
target.setMonth(month);//当月的下个月1日 0时0分0秒
target.setSeconds(-1);//前1秒,即昨天最后1秒钟,也就是上个月的最后一秒钟
result.end = target.getTime();
console.log(result);
console.log(new Date(result.begin), new Date(result.end));
return result;
}
/**
* 获取自然日开始结束时间
* @param {*} year
* @param {*} month
* @param {*} date
*/
function getDateBeginEnd(year, month, date) {
if (~~year === 0 || ~~month === 0 || ~~date === 0) {
throw new Error(''年月日参数错误'');
}
const result = {begin: 0, end: 0};
const target = new Date();
target.setFullYear(year);
target.setMonth(month - 1);
target.setDate(date);
target.setHours(0);
target.setMinutes(0);
target.setSeconds(0);
target.setMilliseconds(0);
result.begin = target.getTime();
const targetDateCount = target.getFullYear() + target.getMonth() + target.getDate();
const now = new Date();
const nowDateCount = now.getFullYear() + now.getMonth() + now.getDate();
if (targetDateCount >= nowDateCount) {
result.end = now.getTime();
console.log(0, result);
console.log(new Date(result.begin), new Date(result.end));
return result;
}
target.setDate(target.getDate() + 1);//次日0时0分0秒
target.setSeconds(-1);//前1秒,即当日最后1秒钟
result.end = target.getTime();
console.log(1, result);
console.log(new Date(result.begin), new Date(result.end));
return result;
}
/**
* 获取自然周开始结束时间
* @param {*} year
* @param {*} month
* @param {*} number 第几周
*/
function getWeekByMonth(year, month, number) {
const weekCount = getWeekCountInMonth(year, month);
const result = {begin: 0, end: 0, list: weekCount};
const target = new Date();
target.setFullYear(year);
target.setMonth(month - 1);
target.setDate(1);
target.setHours(0);
target.setMinutes(0);
target.setSeconds(0);
target.setMilliseconds(0);
let targetDay = target.getDay();
targetDay = targetDay === 0 ? 7 : targetDay;
if (number === weekCount[0]) {
console.log(month + ''月第'' + number + ''周起始'', target);
result.begin = target.getTime();
target.setDate(target.getDate() + (7 - targetDay));//设置到周日最后一秒
target.setHours(23);
target.setMinutes(59);
target.setSeconds(59);
target.setMilliseconds(0);
console.log(month + ''月第'' + number + ''周截止'', target);
result.end = target.getTime();
console.log(result);
return result;
}
target.setDate(target.getDate() + (7 - targetDay) + 1);//对其到周一,设置到第二个周一0时0分0秒
target.setDate(target.getDate() + 7 * (number - 2));//设置到第n周周日
console.log(month + ''月第'' + number + ''周起始'', target);
result.begin = target.getTime();
if (number === weekCount[weekCount.length - 1]) {
target.setMonth(month);//次月1日
target.setDate(1);
target.setHours(0);
target.setMinutes(0);
target.setSeconds(0);
target.setMilliseconds(-1);//向前到当月最后1毫秒
result.end = target.getTime();
console.log(month + ''月第'' + number + ''周截止'', target);
console.log(result);
return result;
}
target.setDate(target.getDate() + 6);//设置到第n周周日
target.setHours(23);
target.setMinutes(59);
target.setSeconds(59);
target.setMilliseconds(0);
result.end = target.getTime();
console.log(month + ''月第'' + number + ''周截止'', target);
console.log(result);
return result;
}
/**
* 获取每月有多少周
* @param {*} year
* @param {*} month
*/
function getWeekCountInMonth(year, month) {
const list = [];
const target = new Date();
let offset = 1;
target.setFullYear(year);
target.setMonth(month - 1);
target.setDate(1);
target.setHours(0);
target.setMinutes(0);
target.setSeconds(0);
target.setMilliseconds(0);
let targetDay = target.getDay();
targetDay = targetDay === 0 ? 7 : targetDay;
if (targetDay !== 1) {
console.log(targetDay);
list.push(offset);
offset = offset + 1;
target.setDate(target.getDate() + (7 - targetDay) + 1);//对齐到周一
}
for (let i = offset; i <= 5; i++) {
list.push(offset);
offset = offset + 1;
target.setDate(target.getDate() + 7);//设置到次周一0时分秒
target.setMilliseconds(-1);//向前1毫秒到本周最后1毫秒
console.log(target);
if ((target.getMonth() + 1) !== month) {
break;
}
}
console.log(month + ''月周数'', list);
return list;
}
/**
* 获取上一月时间
* @param {} date
*/
function getPreMonth (date) {
var _date = dateFormat(''YYYY-MM'', new Date(date));
var arr = _date.split(''-'');
var year = arr[0]; // 获取当前日期的年份
var month = arr[1]; // 获取当前日期的月份
var day = arr[2]; // 获取当前日期的日
var days = new Date(year, month, 0);
days = days.getDate(); // 获取当前日期中月的天数
var year2 = year;
var month2 = parseInt(month) - 1;
if (month2 === 0) {
year2 = parseInt(year2) - 1;
month2 = 12;
}
var day2 = day;
var days2 = new Date(year2, month2, 0);
days2 = days2.getDate();
if (day2 > days2) {
day2 = days2;
}
if (month2 < 10) {
month2 = ''0'' + month2;
}
var t2 = year2 + ''-'' + month2;
return t2;
}
/**
* 获取下一月时间
* @param {时间} date
*/
function getNextMonth (date) {
var _date = dateFormat(''YYYY-MM'', new Date(date));
var arr = _date.split(''-'');
var year = arr[0]; // 获取当前日期的年份
var month = arr[1]; // 获取当前日期的月份
var day = arr[2]; // 获取当前日期的日
var days = new Date(year, month, 0);
days = days.getDate(); // 获取当前日期中的月的天数
var year2 = year;
var month2 = parseInt(month) + 1;
if (month2 === 13) {
year2 = parseInt(year2) + 1;
month2 = 1;
}
var day2 = day;
var days2 = new Date(year2, month2, 0);
days2 = days2.getDate();
if (day2 > days2) {
day2 = days2;
}
if (month2 < 10) {
month2 = ''0'' + month2;
}
var t2 = year2 + ''-'' + month2;
return t2;
}
/**
* 格式化时间
* @param {YYYY-MM-DD hh:mm:ss} String
* @param {时间} date
*/
function dateFormat (fmt, date) {
date = new Date(date);
let ret;
let opt = {
''Y+'': date.getFullYear().toString(), // 年
''M+'': (date.getMonth() + 1).toString(), // 月
''D+'': date.getDate().toString(), // 日
''h+'': date.getHours().toString(), // 时
''m+'': date.getMinutes().toString(), // 分
''s+'': date.getSeconds().toString() // 秒
// 有其他格式化字符需求可以继续添加,必须转化成字符串
};
for (let k in opt) {
ret = new RegExp(''('' + k + '')'').exec(fmt);
if (ret) {
fmt = fmt.replace(ret[1], (ret[1].length === 1) ? (opt[k]) : (opt[k].padStart(ret[1].length, ''0'')));
}
}
return fmt;
}
// getMonthBeginEnd(2019, 9);
// getDateBeginEnd(2019, 10, 16);
// getWeekByMonth(2019, 10, 5);
ASP.NET 获取自然周、自然月等时间段
根据当前时间获取,本周,本月,本季度等时间段
DateTime dt = DateTime.Now; //当前时间
DateTime startWeek = dt.AddDays(1 - Convert.ToInt32(dt.DayOfWeek.ToString("d"))); //本周周一
DateTime endWeek = startWeek.AddDays(6); //本周周日
DateTime startMonth = dt.AddDays(1 - dt.Day); //本月月初
DateTime endMonth = startMonth.AddMonths(1).AddDays(-1); //本月月末
//DateTime endMonth = startMonth.AddDays((dt.AddMonths(1) - dt).Days - 1); //本月月末
DateTime startQuarter = dt.AddMonths(0 - (dt.Month - 1) % 3).AddDays(1 - dt.Day); //本季度初
DateTime endQuarter = startQuarter.AddMonths(3).AddDays(-1); //本季度末
DateTime startYear = new DateTime(dt.Year, 1, 1); //本年年初
DateTime endYear = new DateTime(dt.Year, 12, 31); //本年年末
至于昨天、明天、上周、上月、上季度、上年度等等,只要AddDays()、AddMonths()、AddYears()这几种方法组合一下就可以了。
C#中datetime的使用
//如果你还不明白,再看一下中文显示星期几的方法就应该懂了
//由于DayOfWeek返回的是数字的星期几,我们要把它转换成汉字方便我们阅读,有些人可能会用switch来一个一个地对照,其实不用那么麻烦的
string[] Day = new string[] { "星期日", "星期一", "星期二", "星期三", "星期四", "星期五", "星期六" };
string week = Day[Convert.ToInt32(DateTime.Now.DayOfWeek.ToString("d"))].ToString();
//上周,同理,一个周是7天,上周就是本周再减去7天,下周也是一样
DateTime.Now.AddDays(Convert.ToInt32 (1 - Convert.ToInt32(DateTime.Now.DayOfWeek)) - 7); //上周一
DateTime.Now.AddDays(Convert.ToInt32 (1 - Convert.ToInt32(DateTime.Now.DayOfWeek)) - 7).AddDays(6); //上周末(星期日)
//下周
DateTime.Now.AddDays(Convert.ToInt32 (1 - Convert.ToInt32(DateTime.Now.DayOfWeek)) + 7); //下周一
DateTime.Now.AddDays(Convert.ToInt32(1 - Convert.ToInt32(DateTime.Now.DayOfWeek)) + 7).AddDays(6); //下周末
//本月,很多人都会说本月的第一天嘛肯定是1号,最后一天就是下个月一号再减一天。当然这是对的
//一般的写法
DateTime.Now.Year.ToString() + DateTime.Now.Month.ToString() + "1"; //第一天
DateTime.Parse(DateTime.Now.Year.ToString() + DateTime.Now.Month.ToString() + "1").AddMonths(1).AddDays(-1).ToShortDateString();//最后一天
//巧用C#里ToString的字符格式化更简便
DateTime.Now.ToString("yyyy-MM-01");
DateTime.Parse(DateTime.Now.ToString("yyyy-MM-01")).AddMonths(1).AddDays(-1).ToShortDateString();
//上个月,减去一个月份
DateTime.Parse(DateTime.Now.ToString("yyyy-MM-01")).AddMonths(-1).ToShortDateString();
DateTime.Parse(DateTime.Now.ToString("yyyy-MM-01")).AddDays(-1).ToShortDateString();
//下个月,加去一个月份
DateTime.Parse(DateTime.Now.ToString("yyyy-MM-01")).AddMonths(1).ToShortDateString();
DateTime.Parse(DateTime.Now.ToString("yyyy-MM-01")).AddMonths(2).AddDays(-1).ToShortDateString();
//7天后
DateTime.Now.Date.ToShortDateString();
DateTime.Now.AddDays(7).ToShortDateString();
//7天前
DateTime.Now.AddDays(-7).ToShortDateString();
DateTime.Now.Date.ToShortDateString();
//本年度,用ToString的字符格式化我们也很容易地算出本年度的第一天和最后一天
DateTime.Parse(DateTime.Now.ToString("yyyy-01-01")).ToShortDateString();
DateTime.Parse(DateTime.Now.ToString("yyyy-01-01")).AddYears(1).AddDays(-1).ToShortDateString();
//上年度,不用再解释了吧
DateTime.Parse(DateTime.Now.ToString("yyyy-01-01")).AddYears(-1).ToShortDateString();
DateTime.Parse(DateTime.Now.ToString("yyyy-01-01")).AddDays(-1).ToShortDateString();
//下年度
DateTime.Parse(DateTime.Now.ToString("yyyy-01-01")).AddYears(1).ToShortDateString();
DateTime.Parse(DateTime.Now.ToString("yyyy-01-01")).AddYears(2).AddDays(-1).ToShortDateString();
//本季度,很多人都会觉得这里难点,需要写个长长的过程来判断。其实不用的,我们都知道一年四个季度,一个季度三个月
//首先我们先把日期推到本季度第一个月,然后这个月的第一天就是本季度的第一天了
DateTime.Now.AddMonths(0 - ((DateTime.Now.Month - 1) % 3)).AddDays(1 - DateTime.Now.Day);
//同理,本季度的最后一天就是下季度的第一天减一
DateTime.Parse(DateTime.Now.AddMonths(3 - ((DateTime.Now.Month - 1) % 3)).ToString("yyyy-MM-01")).AddDays(-1).ToShortDateString();
//下季度
DateTime.Now.AddMonths(3 - ((DateTime.Now.Month - 1) % 3)).ToString("yyyy-MM-01");
DateTime.Parse(DateTime.Now.AddMonths(6 - ((DateTime.Now.Month - 1) % 3)).ToString("yyyy-MM-01")).AddDays(-1).ToShortDateString();
//上季度
DateTime.Now.AddMonths(-3 - ((DateTime.Now.Month - 1) % 3)). AddDays(1 - DateTime.Now);
DateTime.Now.AddMonths(0 - ((DateTime.Now.Month - 1) % 3)).AddDays(1 - DateTime.Now.Day).AddDays(-1).ToShortDateString();
C# 自然周,月,季度计算。
/// <summary>
/// 判断时间是否和服务器时间是一天
/// </summary>
/// <param name="cs"></param>
/// <returns></returns>
public static bool JudgeTimeIsToDay(DateTime cs)
{
DateTime start = Convert.ToDateTime(cs.ToShortDateString());
DateTime end = Convert.ToDateTime(DateTime.Now.ToShortDateString());
TimeSpan sp = end.Subtract(start);
return sp.Days == 0;
}
/// <summary>
/// 计算当前季度多少天
/// </summary>
/// <returns></returns>
public static int DateDiff()
{
DateTime start = Convert.ToDateTime(ToFirstDayOfSeason().ToShortDateString());
DateTime end = Convert.ToDateTime(ToLastDayOfSeason().ToShortDateString());
TimeSpan sp = end.Subtract(start);
return sp.Days;
}
/// <summary>
/// 计算当前月有多少天
/// </summary>
/// <returns></returns>
public static int GetMonthDays()
{
return System.Threading.Thread.CurrentThread.CurrentUICulture.Calendar.GetDaysInMonth(DateTime.Now.Year, DateTime.Now.Month);
}
/// <summary>
/// 计算本周的周一日期
/// </summary>
/// <returns></returns>
public static DateTime GetMondayDate()
{
return GetMondayDate(DateTime.Now);
}
/// <summary>
/// 计算本周周日的日期
/// </summary>
/// <returns></returns>
public static DateTime GetSundayDate()
{
return GetSundayDate(DateTime.Now);
}
/// <summary>
/// 获取本月最后一天
/// </summary>
/// <param name="datetime"></param>
/// <returns></returns>
public static DateTime LastDayOfMonth()
{
return DateTime.Now.AddDays(1 - DateTime.Now.Day).AddMonths(1).AddDays(-1);
}
/// <summary>
/// 计算本月的第一天
/// </summary>
/// <returns></returns>
public static DateTime FirstDayOfMonth()
{
return DateTime.Now.AddDays(1 - DateTime.Now.Day);
}
/// <summary>
/// 获取该时间所在季度的第一天
/// </summary>
/// <returns></returns>
public static DateTime ToFirstDayOfSeason()
{
return ToFirstDayOfSeason(DateTime.Now);
}
/// <summary>
/// 获取该时间所在季度的最后一天
/// </summary>
/// <returns></returns>
public static DateTime ToLastDayOfSeason()
{
return ToLastDayOfSeason(DateTime.Now);
}
/// <summary>
/// 获取该时间所在季度的第一天
/// </summary>
/// <param name="target"></param>
/// <returns></returns>
public static DateTime ToFirstDayOfSeason(DateTime target)
{
int ThisMonth = DateTime.Now.Month;
int FirstMonthOfSeason = ThisMonth - (ThisMonth % 3 == 0 ? 3 : (ThisMonth % 3)) + 1;
target = target.AddMonths(FirstMonthOfSeason - ThisMonth);
return Convert.ToDateTime(target.ToString("yyyy-MM-01 HH:mm:ss"));
}
/// <summary>
/// 获取该时间所在季度的最后一天
/// </summary>
/// <param name="target"></param>
/// <returns></returns>
public static DateTime ToLastDayOfSeason(DateTime target)
{
int ThisMonth = DateTime.Now.Month;
int FirstMonthOfSeason = ThisMonth - (ThisMonth % 3 == 0 ? 3 : (ThisMonth % 3)) + 3;
target = target.AddMonths(FirstMonthOfSeason - ThisMonth);
return Convert.ToDateTime(target.AddMonths(1).ToString("yyyy-MM-01 HH:mm:ss")).AddDays(-1);
}
/// <summary>
/// 计算本月的第一天
/// </summary>
/// <returns></returns>
public static DateTime FirstDayOfMonth(DateTime datetime)
{
return datetime.AddDays(1 - datetime.Day);
}
/// <summary>
/// 获取本月最后一天
/// </summary>
/// <param name="datetime"></param>
/// <returns></returns>
public static DateTime LastDayOfMonth(DateTime datetime)
{
return datetime.AddDays(1 - datetime.Day).AddMonths(1).AddDays(-1);
}
/// <summary>
/// 计算某日起始日期(礼拜一的日期)
/// </summary>
/// <param name="someDate">该周中任意一天</param>
/// <returns>返回礼拜一日期,后面的具体时、分、秒和传入值相等</returns>
public static DateTime GetMondayDate(this DateTime someDate)
{
int i = someDate.DayOfWeek - DayOfWeek.Monday;
if (i == -1) i = 6;// i值 > = 0 ,因为枚举原因,Sunday排在最前,此时Sunday-Monday=-1,必须+7=6。
TimeSpan ts = new TimeSpan(i, 0, 0, 0);
return someDate.Subtract(ts);
}
/// <summary>
/// 计算某日结束日期(礼拜日的日期)
/// </summary>
/// <param name="someDate">该周中任意一天</param>
/// <returns>返回礼拜日日期,后面的具体时、分、秒和传入值相等</returns>
public static DateTime GetSundayDate(this DateTime someDate)
{
int i = someDate.DayOfWeek - DayOfWeek.Sunday;
if (i != 0) i = 7 - i;// 因为枚举原因,Sunday排在最前,相减间隔要被7减。
TimeSpan ts = new TimeSpan(i, 0, 0, 0);
return someDate.Add(ts);
}
public static DateTime GetSundayDate(this DateTime someDate, int hour, int minute, int second)
{
int i = someDate.DayOfWeek - DayOfWeek.Sunday;
if (i != 0) i = 7 - i;// 因为枚举原因,Sunday排在最前,相减间隔要被7减。
TimeSpan ts = new TimeSpan(i, 0, 0, 0);
var ret = someDate.Add(ts);
ret = ret.AddHours(hour - ret.Hour);
ret = ret.AddMinutes(minute - ret.Minute);
ret = ret.AddSeconds(second - ret.Second);
return ret;
}
iView 开始结束时间组件
演示地址:https://run.iviewui.com/TGIKGkIt
测试页面文件:
1 <template>
2 <div>
3 <startEndTime @newEndTime="newEndTimeData" :startEndTimeData="timeDataObj"></startEndTime>
4 <div style="text-align:center"> 选择的时间是:{{endTimeDate}}</div>
5 </div>
6 </template>
7 <script>
8
9 import startEndTime from "../components/startEndTime.vue"
10
11 export default {
12 name: "text-template",
13 data() {
14 return {
15 endTimeDate: "",
16 timeDataObj: {
17 timeName: "日期区间", // 日期名称
18 timeType: "datetimerange", // 类型:date、daterange、datetime、datetimerange、year、month
19 timeShortcuts: { // 显示左边内容,不传不显示
20 shortcuts: [
21 {
22 text: "最近一周",
23 value() {
24 const end = new Date();
25 const start = new Date();
26 start.setTime(start.getTime() - 3600 * 1000 * 24 * 7);
27 return [start, end];
28 }
29 },
30 {
31 text: "最近一个月",
32 value() {
33 const end = new Date();
34 const start = new Date();
35 start.setTime(start.getTime() - 3600 * 1000 * 24 * 30);
36 return [start, end];
37 }
38 }
39 ],
40 },
41 timeFormat: "yyyy-MM-dd HH:mm:ss", // 时间格式
42 timeModel: "", //
43 }
44 };
45 },
46 methods: {
47 newEndTimeData(val){
48 this.endTimeDate = val
49 }
50 },
51 components: {
52 startEndTime
53 }
54 };
55 </script>
开始结束日期组件 startEndTime.vue
1 <template>
2 <div style="width:353px;margin:50px auto">
3 <Row>
4 <Col span="24">
5 {{startEndTimeData.timeName || ''时间''}}
6 <DatePicker v-model="startEndTimeData.timeModel" :type="startEndTimeData.timeType || ''date''" @on-change="changeEndTime" :options="startEndTimeData.timeShortcuts" :format="startEndTimeData.timeFormat || ''yyyy-MM-dd HH:mm''" placeholder="开始结束时间" style="width: 300px"></DatePicker>
7 </Col>
8 </Row>
9 </div>
10 </template>
11 <script>
12 export default {
13 data() {
14 return {
15 };
16 },
17 props: {
18 startEndTimeData: Object
19 },
20 methods: {
21 changeEndTime(val){
22 this.$emit("newEndTime",val)
23 }
24 }
25 };
26 </script>
java 使用Calendar类计算每月有多少自然周,并输出每周的开始和结束日期
思路:首先是获取该月的实际天数,然后从1号遍历直至该月最后一天,利用Calendar类找出该日是一周中的第几天,
(1)若该日是周日,则视为一周结束,并用该日期减去6找到该周的开始日期,若相减结果小于等于1,则说明该周起始日期应该是本月1号。
(1)若该日不是周日,且是该月最后一天,则应该在上面计算的基础上再加一周,视月末为该周的结束日,该周起始日期应为改日期减去改日
在一周中的位置加2,例如:2013-09-30号是周一,则视为9月份中的第六周,开始日期是30-2+2
提示:Calendar 类中视周日为一周的开始,值是1
示例代码:
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("-----------------------------------");
}
}
}
测试代码:
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);
}
关于js 获取自然周 / 自然月 / 自然日开始结束时间戳和js获取当前自然周的问题我们已经讲解完毕,感谢您的阅读,如果还想了解更多关于ASP.NET 获取自然周、自然月等时间段、C# 自然周,月,季度计算。、iView 开始结束时间组件、java 使用Calendar类计算每月有多少自然周,并输出每周的开始和结束日期等相关内容,可以在本站寻找。
本文标签: