这是我之前写的一个共能的需求

前后天都可以这么写,前台写在js函数中。

日期:往期推7天

public string[] Day(string date)

{

string[] dateTimes = new string[7];// 日期节点

date = date.Replace('/', '-');

int pYears = Convert.ToInt32(date.Split('-')[0]);

int pMonths = Convert.ToInt32(date.Split('-')[1]);

int days = DateTime.DaysInMonth(pYears, pMonths);

int pDay = Convert.ToDateTime(date).Day;

string time1 = "";

string time2 = "";

for (int i = 0; i < 7; i++)

{

if(i!=0)

{

pDay = pDay - 1;

}

if (pMonths < 10)

{

time1 = "0" + pMonths;

}

else

{

time1 = Convert.ToString(pMonths);

}

if (pDay < 10)

{

time2 = "0" + pDay;

}

else

{

time2 =Convert.ToString(pDay);

}

string datetime1 = (pYears + "-" + time1 + "-" + time2);// 每天的开始时间也可以加上“00:00: 00”

int vMaxs = DateTime.DaysInMonth(pYears, pMonths);// 每个月的天数

string datetime2 = (pYears + "-" + time1 + "-" + time2);// 每天的结束时间“23 :59 :59”

// datetime1和datetime2两个选其中一个就OK了

for (int j = i; j <= i; j++)

{

dateTimes[i] = datetime1;

}

}

//数组 取反 因为我们是从最近的日期开始往前推,所以我们要把渠道的日期反过来从小到大,看需求,可写可不写

Array.Reverse(dateTimes);

return dateTimes;

}

日期:往前推5个月

public string[] datetomaxday(string date)

{

// 定义下标为6的原因是因为,我们要求的是往前推五个月是五个时间区间不是五个时间节点

string[] dateTimes = new string[6];// 8.30  9.30  10.30  11.30  12.30  01.30 六个时间节点

date = date.Replace('/', '-');//把 / 替换为 -

int pYears = Convert.ToInt32(date.Split('-')[0]);

int pMonths = Convert.ToInt32(date.Split('-')[1]);

int it = pYears + 1;

for (int i = 0; i < 6; i++)

{

if (pMonths == 1 && i == 1)

{

pYears = pYears - 1;

pMonths = 12;

}

else

{

if (pMonths == 1)

{

pMonths = pMonths - 0;

}

else

{

pMonths = pMonths - 1;

}

}

string datetime1 = (pYears + "-" + pMonths + "-01 00:00:00");// 求每个月月初的时间

int vMaxs = DateTime.DaysInMonth(pYears, pMonths);// 求所每个月的天数

string datetime2 = (pYears + "-" + pMonths + "-" + vMaxs + " 23:59:59");// 每个月月末的时间

// datetime1和datetime2两个选其中一个就OK了

for (int j = i; j <= i; j++)

{

dateTimes[i] = datetime2;

}

}

//数组 取反 因为我们是从最近的日期开始往前推,所以我们要把渠道的日期反过来从小到大,看需求,可写可不写

Array.Reverse(dateTimes);

return dateTimes;

}

当前日期往前推N天或者N个月相关推荐

  1. python 系统当前时间向前推2天_当前日期往前推N天,当前日期往后推N天

    // 日期往前num天 function beforeDay(num){ //设置日期,当前日期的前num天 var myDate = new Date(); //获取今天日期 myDate.setD ...

  2. js当前日期向前推3个月时的日期

    写在前面的话:        项目中用到选择日期范围查询,默认起始时间是今天向前推3个月.上网查了半天,让我很失望,没找到准确的~~~        本想封装一个函数,可以向前推也可以向后推n月或n年 ...

  3. Java在当前日期基础上加一年、一个月或一天

    //获取当前日期 Date date = new Date();//创建Calendar实例 Calendar cal = Calendar.getInstance(); cal.setTime(da ...

  4. js操作在当前日期加减(天、周、月、年数)

    1. 项目案例 首先,我们创建个获取当前日期的变量nowDate,项目中需求是设置在当前时间的15天后做xxx事情,写一个方法 getNextDay () {let nowDate = new Dat ...

  5. JS获取当前日期,获取上个月的日期,一个月有多少天

    小程序.H5 获取日期 // 获取时间不满两位补0formatTen: function (num) {return num > 9 ? (num + "") : (&quo ...

  6. js 操作在当前日期加减(天、周、月、年数)

    目录 1.当前时间的15天后 2. 相关延伸 1.当前时间的15天后 getNextDay () {let nowDate = new Date()nowDate.setDate(nowDate.ge ...

  7. ios 根据日期知道周几_iOS 获取当前日期是周几

    获取当前日期月份的第一天/最后一天日期 获取当前日期是周几 //获取日期date对应月的第一天日期 + (NSString *)getMonthFirstDayWithDate:(NSDate *)d ...

  8. oracle向前推一个小时,oracle SQL里常用的时间函数,经典推荐

    oracle SQL里常用的时间函数,经典推荐 (2009-03-11 23:16:54) 标签: 杂谈 常用日期型函数 1.Sysdate 当前日期和时间 SQL> Select sysdat ...

  9. Java时间Calendar

    Java时间类操作Calendar // 其日历字段已由当前日期和时间初始化: Calendar rightNow = Calendar.getInstance(); // 子类对象// 获取年 in ...

最新文章

  1. 21day学通python_铁乐学python_day21_面向对象编程3
  2. c#实现显式的用户自定义类型转换(关键字explicit operator)
  3. oracle 指定格式化,Oracle中的格式化函数
  4. 5193. 删除字符使字符串变好
  5. Python 读写配置文件模块: configobj 和 configParser
  6. mysql 锁机制及实现原理_MySQL-深入浅出锁分类及实现原理
  7. 一篇搞懂Android View
  8. Vue分支循环结构~非常详细哦
  9. Webservice原理解析
  10. 浅谈IPv6网络安全问题及解决对策
  11. [已解决]smallbin double linked list
  12. C++STL库之algorithm库
  13. 利用MATLAB仿真实现交通红绿灯识别的目的
  14. 对称加密与非对称加密的区别
  15. element 表格背景颜色透明
  16. 最难初等平面几何题系列及其解法的一个介绍性材料
  17. MATLAB离散傅里叶变换实验结果分析,Matlab离散傅里叶变换实验报告.doc
  18. 如何选择条码标签打印软件?
  19. 【python】使用python将多个视频合并、延长视频的时间
  20. IOS触摸屏手势控制镜头旋转与缩放

热门文章

  1. 融云 uni-app 原生插件,生态丰富、高效集成
  2. asp.net开发必备51种代码(非常实用)
  3. 【json】在线解析
  4. Maven——多线程编译
  5. VirtualBox 共享文件夹失败
  6. virtualbox 共享文件夹内创建软连接失效
  7. CTFSHOW SSTI入门
  8. 位运算(<<移位>>、与、或|、反~、异或^)及运用【求子集】【判相等】...(各类问题持续更新)
  9. 准备学python用什么电脑_学Python买什么笔记本电脑?
  10. linux 匹配 中文开头,中文正则表达式匹配问题之正则表达式中文匹配使用方法,...