C# 获取两个时间段之间的所有时间与获取当前时间所在的季度开始和结束时间
一:C# 获取两个时间段之间的所有时间
public List<string> GetTimeList(string rq1, string rq2)
{
List<string> timeList = new List<string>();
//首先保证 rq1<=rq2
DateTime time1 = Convert.ToDateTime(rq1);
DateTime time2 = Convert.ToDateTime(rq2);
while (time1 <= time2)
{
timeList.Add(time1.ToString("yyyy-MM-dd"));
time1 = time1.AddDays(1);
}
return timeList;
}
使用:
List<string> sjList = GetTimeList(sj1, sj2);
二:获取当前时间所在季度的开始和结束时间
//本季度
private List<string> FunSelectSJNow(string jd)
{
List<string> lis = new List<string>();
string NowYear = jd.Substring(0, 4); //截取当前年份
string Nowjd = jd.Substring(jd.Length - 2, 2); //截取当前季度
string StartTime = ""; //当前季度的开始时间
string endTime = ""; //当前季度的结束时间
if (Nowjd == "01")
{
StartTime = "-01-01";
endTime = "-03-01";
}
if (Nowjd == "02")
{
StartTime = "-04-01";
endTime = "-06-01";
}
if (Nowjd == "03")
{
StartTime = "-07-01";
endTime = "-09-01";
}
if (Nowjd == "04")
{
StartTime = "-10-01";
endTime = "-12-01";
}
StartTime = NowYear + StartTime;
endTime = NowYear + endTime;
lis.Add(StartTime);
lis.Add(endTime);
return lis;
}
//上季度
private List<string> FunSelectLastSJ(string jd)
{
List<string> lis = new List<string>();
string NowYear = jd.Substring(0, 4); //截取当前年份
string Nowjd = jd.Substring(jd.Length - 2, 2); //截取当前季度
string StartTime = ""; //上季度的开始时间
string endTime = ""; //上季度的结束时间
string endYear = ""; //上季度年
string endjd = ""; //上季度季度
if (Nowjd == "01")
{
endYear = (Convert.ToInt32(NowYear) -1).ToString() ;
endjd = "Q4";
}
if (Nowjd == "02")
{
endYear = NowYear;
endjd = "Q1";
}
if (Nowjd == "03")
{
endYear = NowYear;
endjd = "Q2";
}
if (Nowjd == "04")
{
endYear = NowYear;
endjd = "Q3";
}
if (endjd == "Q1")
{
StartTime = "-01-01";
endTime = "-03-01";
}
if (endjd == "Q2")
{
StartTime = "-04-01";
endTime = "-06-01";
}
if (endjd == "Q3")
{
StartTime = "-07-01";
endTime = "-09-01";
}
if (endjd == "Q4")
{
StartTime = "-10-01";
endTime = "-12-01";
}
StartTime = endYear + StartTime;
endTime = endYear + endTime;
lis.Add(StartTime);
lis.Add(endTime);
return lis;
}
使用:
List<string> li = FunSelectSJNow(NowTime);
rq1 = li[0];
rq2 = li[1];
// jd: Q1,Q2,Q3,Q4 (四个季度)
List<string> li = FunSelectLastSJ(jd);
rq1 = li[0];
rq2 = li[1];
C# 获取两个时间段之间的所有时间与获取当前时间所在的季度开始和结束时间的更多相关文章
- Java 获取两个日期之间的日期
1.前期需求,两个日期,我们叫他startDate和endDate,然后获取到两个日期之间的日期 /** * 获取两个日期之间的日期 * @param start 开始日期 * @param end ...
- JS 格式化时间(获取两个日期之间的每一天、每一月、每半小时、每一秒)
时间戳转换为时间 // 时间戳转换为时间 function timestampToTime(timestamp, isMs = true) { const date = new Date(timest ...
- java 获取两个日期之间的所有日期(年月日)
前言:直接上代码 java 获取两个日期之间的所有日期(年月日) /** * 获取两个日期之间的日期,包括开始结束日期 * @param start 开始日期 * @param end 结束日期 * ...
- Mysql 如何查询两个时间段之间的数据?
Mysql 如何查询两个时间段之间的数据?
- java获取两个日期之间的所有日期
java获取两个日期之间的所有日期 解决方法: 1.核心方法 private List<String> getBetweenDates(String start, String end ...
- SQL 获得两个时间段之间的数据
一般保存在数据库中的日期精度很高,比如'2014-04-15 16:31:22.000' 而一般用户选择的时间精度是精确到日的,比如'2012-04-15' 所以你想取出两个日期之间的数据,如果用下面 ...
- php获取两个时间戳之间相隔多少天多少小时多少分多少秒
/** * 返回两个时间的相距时间,*年*月*日*时*分*秒 * @param int $one_time 时间一 * @param int $two_time 时间二 * @param int $r ...
- 获取两个时间节点的月份列表&&每个月份的开始时间及结束时间
//Q:从今天起之前五个月的列表 date_default_timezone_set('PRC'); $time=strtotime('-5 month'); //包含本月 $begin = strt ...
- php 获取 两个时间戳之间 相隔 【多少年】 【 多少个月】 【多少天】 【 多少个小时】 【多少分】【 多少秒 】
/** * 返回两个时间的相距时间,*年*月*日*时*分*秒 * @param int $one_time 时间戳一 大的时间戳 * @param int $two_time 时间戳二 小的时间戳 * ...
随机推荐
- linux更改文件权限
chown –Rh cheat:cheat /home/cheat/task/Cheat
- Hadoop+Hive 操作mongodb数据
Hadoop+Hive 操作mongodb数据 1.版本概述 hadoop-2.7.3.hive-2.2 下载响应的jar包:http://mvnrepository.com/,直接搜索想要的jar包 ...
- 发布Framework 4.0到iis时,出现HTTP 错误 403.14 - Forbidden
新发布MVC到服务器的时候,经常碰到403.14错误,绝大部分的时候都是因为Framework 4.0需要重新注册下,在运行里输入:C:\Windows\Microsoft.NET\Framework ...
- 如何在生产环境禁用swagger
pringMVC集成springfox-swagger2和springfox-swagger-ui很简单,只需要两步: (1)pom中添加依赖 <dependency> <group ...
- 使用jQuery和CSS3制作数字时钟(jQuery篇) 附源码下载
HTML 和上一篇文章:使用jQuery和CSS3制作数字时钟(CSS3篇)一样的HTML结构,只是多了个>date用来展示日期和星期的. <div id="clock" ...
- Java - 延迟初始化
延迟初始化(lazy initialization),也就是在真正被使用的时候才开始初始化的技巧. 不论是静态还是实例,都可以进行延迟初始化. 其本质是初始化开销和访问开销之间的权衡. 毕竟是一种优化 ...
- SPA应用部署时首屏启动慢问题解决方案
SPA应用部署时首屏启动慢问题解决方案 使用vuejs开发的单页应用,打包部署上线后,发现首屏启动时间达到了惊人的10s左右,于是开始优化,目前使用到的总结如下: 巧用webpack插件 1.抽取cs ...
- [android] 手机卫士黑名单功能(短信拦截)
前面我们把需要拦截的手机号都存储和展示出来了,接下来是使用广播接收者拦截短信了,这个广播接收者需要和一个服务绑定,服务开启的时候,接收者存在,服务停掉时,接收者关闭 在service包下定义一个类Ca ...
- 【转】SQL语句统计每天、每月、每年的数据
原文:https://www.cnblogs.com/Fooo/p/3435687.html SQL语句统计每天.每月.每年的数据 1.每年select year(ordertime) 年,sum(T ...
- linq中如何实现多个条件的联合查询
目前接触处理数据这一块比较多,在处理内存中的数据源的时候我一般使用的是linq,linq使用起来像sql语句一样,用法简单,功能强大. 最近需要实现一个从两个不同的文件读取不同的数据,然后根据这两个数 ...