这篇文章主要分享关于在Uipath中,对日期的一些操作。主要使用的是 DateTime。

1. 初始化一个DateTime, 可以是年,月,日,时,分,秒。

    数据类型是 DateTime

 初始化如下:

输出结果是:02/06/2021 14:30:00

2. 获取本机当前的日期和时间

输出结果是:当前时间->01/18/2022 10:33:47

3. DateTime一些属性的用途

1).Date 返回日期,时间都是00:00:00
2).Day 返回在当前月份的第几天
3).DayOfWeek 返回星期几,如Friday
4).DayOfYear 返回在一年中的第几天

先定义一个 DateTime的变量。

各个属性输出的结果如下:

输入:"日期是->"+ DateTimeTest.ToString

输出:日期是->04/30/2021 14:10:05

输入:" .Date的结果->" + DateTimeTest.Date.ToString

输出: .Date的结果->04/30/2021 00:00:00

输入:" .Day的结果->" + DateTimeTest.Day.ToString

输出: .Day的结果->30

输入:" .DayOfWeek的结果->" + DateTimeTest.DayOfWeek.ToString

输出: .DayOfWeek的结果->Friday

(如果是通过int32类型的变量接收结果,打印出来就是数字,例如 5 )

输入:" .DayOfYear的结果->" + DateTimeTest.DayOfYear.ToString

输出:.DayOfYear的结果->120

4. DateTime 中,对日期的调整/计算。

包括分钟,小时,日期,月份,年等。正数是向后计算,负数是向前计算

AddHours:小时的操作

AddDays:天数的操作

AddMonths:月份的操作

AddYears:年的操作

 先初始化一个DateTime的变量。内容是 “01/02/2021 14:10:05”。

输入"Add Hours->" + DateTimeTest.AddHours(20).ToString

输出:Add Hours->02/02/2021 10:10:05

输入:  "Add Days->" + DateTimeTest.AddDays(-5).ToString

输出:Add Days->01/27/2021 14:10:05

输入"Add Month->" + DateTimeTest.AddMonths(5).ToString

输出:Add Month->07/01/2021 14:10:05

输入"Add Years->" + DateTimeTest.AddYears(-5).ToString

输出:Add Years->02/01/2016 14:10:05

​5. 计算两个日期的间隔

DateTime1.Subtract(DateTime2)

如果DateTime1 大于 DateTime2,则返回正数,否则返回负数。

1) 只有Subtract时,返回相差的天数和小时,分,秒

2) Hours, 返回两个日期相差的小时数,但不计算天数

3) TotalHours, 返回两个日期相差得所有小时数,每天按照24小时计算

4) TotalDays, 返回两个日期相差的日期,小数点后面是时间的比例

5) 如果两个日期直接相减,如 DateTime1 - DateTime2,增结果等同于 Subtract

先定义两个DateTime的变量,如下:

输入"Only Subtract->" + DateTimeTest.Subtract(DateTimeTest2).ToString

输出:Only Subtract->-29.23:30:00

输入"Subtract Hours->" + DateTimeTest.Subtract(DateTimeTest2).Hours.ToString

输出:Subtract Hours->-23

输入"Subtract TotalHours->" + DateTimeTest.Subtract(DateTimeTest2).TotalHours.ToString

输出:Subtract TotalHours->-719.5

输入"Subtract TotalDays->" + DateTimeTest.Subtract(DateTimeTest2).TotalDays.ToString

输出:Subtract TotalDays->-29.9791666666667

输入"Subtract Directly->" + (DateTimeTest - DateTimeTest2).ToString

输出:Subtract Directly->-29.23:30:00

6. 关于日期的格式化输出

1) ToShortDateString, 只输出日期信息,不包含时间

2) ToLongDateString, 输出带有英文单词的日期

3) ToShortTimeString, 只输出小时和分钟

4) ToLongTimeString, 输出小时,分钟和秒

5) ToLocalTime, 按照本机电脑的格式,进行输出

6) ToString, 可以自定义输出日期的格式。(符合日期规范即可)

先定义一个DateTime的变量。

输入:“ToShortDateString->” + DateTimeTest.ToShortDateString

输出:ToShortDateString->01/18/2021

输入:“ToLongDateString->” + DateTimeTest.ToLongDateString

输出:ToLongDateString->Monday, 18 January 2021

输入:“ToShortTimeString->” + DateTimeTest.ToShortTimeString

输出:ToShortTimeString->14:10

输入:“ToLongTimeString->” + DateTimeTest.ToLongTimeString

输出:ToLongTimeString->14:10:05

输入:“ToLocalTime->” + DateTimeTest.ToLocalTime.ToString

输出:ToLocalTime->01/18/2021 22:10:05

输入:“Design Format ->” + DateTimeTest.ToString("yyyy-MM-dd HH:mm:ss")

输出:Design Format ->2021-01-18 14:10:05

7. 关于字符串转日期

(以下内容来自网络,但忘记出处了,如有雷同,请联系。我将更新原著URL)

DateTime.Parse, 将日期和时间的字符串表示形式转换为其等效的 DateTime。

DateTime.ParseExact, 将日期和时间的指定字符串表示形式转换为其等效的 DateTime。 字符串表示形式的格式必须与指定的格式完全匹配,否则会引发异常。

-----------

格式模式 说明:

d 月中的某一天。一位数的日期没有前导零。

dd 月中的某一天。一位数的日期有一个前导零。

ddd 周中某天的缩写名称,在 AbbreviatedDayNames 中定义。

dddd 周中某天的完整名称,在 DayNames 中定义。

M 月份数字。一位数的月份没有前导零。

MM 月份数字。一位数的月份有一个前导零。

MMM 月份的缩写名称,在 AbbreviatedMonthNames 中定义。

MMMM 月份的完整名称,在 MonthNames 中定义。

y 不包含纪元的年份。如果不包含纪元的年份小于 10,则显示不具有前导零的年份。

yy 不包含纪元的年份。如果不包含纪元的年份小于 10,则显示具有前导零的年份。

yyyy 包括纪元的四位数的年份。

gg 时期或纪元。如果要设置格式的日期不具有关联的时期或纪元字符串,则忽略该模式。

h 12 小时制的小时。一位数的小时数没有前导零。

hh 12 小时制的小时。一位数的小时数有前导零。

H 24 小时制的小时。一位数的小时数没有前导零。

HH 24 小时制的小时。一位数的小时数有前导零。

m 分钟。一位数的分钟数没有前导零。

mm 分钟。一位数的分钟数有一个前导零。

s 秒。一位数的秒数没有前导零。

ss 秒。一位数的秒数有一个前导零。

关于如何把一个字符串转换为 DateTime的例子。

NewDateTime.ToString的输出结果是 03/13/2020 00:00:00

以下是其他的转换例子。

输入"某月的第一天->" + DateTime.Parse(DateTime.Now.AddMonths(-3).ToString("yyyy-MM-01")).ToString

输出:某月的第一天->10/01/2021 00:00:00

输入"上周星期天->" + DateTime.Parse(DateTime.Now.AddDays(-7- DateTime.Now.DayOfWeek ).ToString("yyyy-MM-dd")).ToString

输出:上周星期天->01/09/2022 00:00:00

输入"昨天->" + DateTime.Parse(DateTime.Now.AddDays(-1).ToString("yyyy-MM-dd")).ToString

输出:昨天->01/17/2022 00:00:00

示例代码都放到了如下链接,欢迎下载进行了解。

https://download.csdn.net/download/neupeople/76454183

以上是自己的一些总结,欢迎大家来指导。

Logo

腾讯云面向开发者汇聚海量精品云计算使用和开发经验,营造开放的云计算技术生态圈。

更多推荐