C#使用DateTime获取日期和时间

在C#中,DateTime类是用来处理日期和时间的类。它具有许多属性和方法,用于操作和获取日期和时间的不同部分。以下是DateTime类的一些常用属性和方法。

属性:

1、DateTime.Now:获取当前日期和时间。

DateTime currentDateTime = DateTime.Now;
Console.WriteLine(currentDateTime);//2023/11/21 21:26:04

假如我们想要获取当前日期的某些数据,我们还可以使用DateTime.Now相关的属性和方法。

具体常用的有一下这些:

  属性:

(1)DateTime.Now.Ticks返回自公元1年1月1日午夜以来经过的以100纳秒为间隔的时间单位数。

long ticks = DateTime.Now.Ticks;
Console.WriteLine(ticks);//637799999912345678

(2)DateTime.Now.Year:获取当前日期的年份部分。

int currentYear = DateTime.Now.Year;
Console.WriteLine(currentYear);//2023

(3)DateTime.Now.Month:获取当前日期的月份部分。

int currentMonth = DateTime.Now.Month;
Console.WriteLine(currentMonth);//11

(4)DateTime.Now.Day:获取当前日期的天数部分。

int currentDay = DateTime.Now.Day;
Console.WriteLine(currentDay);//21

(5)DateTime.Now.DayOfWeek:获取当前日期是星期几。

DayOfWeek currentDayOfWeek = DateTime.Now.DayOfWeek;
Console.WriteLine(currentDayOfWeek);//Monday

(6)DateTime.Now.DayOfYear:获取当前日期是一年中的第几天。

int currentDayOfYear = DateTime.Now.DayOfYear;
Console.WriteLine(currentDayOfYear);//325

(7)DateTime.Now.TimeOfDay:获取当前时间部分。

TimeSpan currentTimeOfDay = DateTime.Now.TimeOfDay;
Console.WriteLine(currentTimeOfDay);//21:42:31.1234567

  方法:

(1)DateTime.Now.ToString:将当前日期时间对象转换为字符串表示。

string currentDateTimeString = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss");
Console.WriteLine(currentDateTimeString);//2023-11-21 21:42:31

(2)DateTime.Now.ToShortDateString:获取当前日期的短日期字符串表示(只包含日期部分)。

string currentDateShortString = DateTime.Now.ToShortDateString();
Console.WriteLine(currentDateShortString);//2023/11/21

(3)DateTime.Now.ToShortTimeString:获取当前时间的短时间字符串表示(只包含时间部分)。

string currentTimeShortString = DateTime.Now.ToShortTimeString();
Console.WriteLine(currentTimeShortString);//21:42

(4)DateTime.Now.AddDays:将指定的天数添加到当前日期中。

DateTime tomorrow = DateTime.Now.AddDays(1);
Console.WriteLine(tomorrow);//2023/11/22 21:42:31

(5)DateTime.Now.AddMonths:将指定的月份数添加到当前日期中。

DateTime nextMonth = DateTime.Now.AddMonths(1);
Console.WriteLine(nextMonth);//2023/12/21 21:42:31

(6)DateTime.Now.AddYears:将指定的年份数添加到当前日期中。

DateTime nextYear = DateTime.Now.AddYears(1);
Console.WriteLine(nextYear);//2024/11/21 21:42:31

(7)DateTime.Now.AddHours:将指定的小时数添加到当前时间中。

DateTime newTime = DateTime.Now.AddHours(2);
Console.WriteLine(newTime);//2023/11/21 23:42:31

(8)DateTime.Now.AddMinutes:将指定的分钟数添加到当前时间中。

DateTime newTime = DateTime.Now.AddMinutes(15);
Console.WriteLine(newTime);//2023/11/21 21:57:31

2、DateTime.Today:获取当前日期,时间部分为午夜。

DateTime currentDate = DateTime.Today;
Console.WriteLine(currentDate); //2023/11/21 00:00:00

3、DateTime.Year:获取日期的年份部分。

DateTime date = new DateTime(2022, 11, 21);
int year = date.Year;
Console.WriteLine(year);//2022

4、DateTime.Month:获取日期的月份部分。

DateTime date = new DateTime(2023, 12, 21);
int month = date.Month;
Console.WriteLine(month);//12

5、DateTime.Day:获取日期的天数部分。

DateTime date = new DateTime(2023, 11, 21);
int day = date.Day;
Console.WriteLine(day);//21

6、DateTime.DayOfWeek:获取日期是星期几。

DateTime date = new DateTime(2023, 11, 21);
DayOfWeek dayOfWeek = date.DayOfWeek;
Console.WriteLine(dayOfWeek);//Monday

7、DateTime.DayOfYear:获取日期是一年中的第几天。

DateTime date = new DateTime(2023, 11, 21);
int dayOfYear = date.DayOfYear;
Console.WriteLine(dayOfYear);//325

8、DateTime.TimeOfDay:获取时间部分。

DateTime dateTime = new DateTime(2023, 11, 21, 9, 30, 0);
TimeSpan timeOfDay = dateTime.TimeOfDay;
Console.WriteLine(timeOfDay);//09:30:00

9、DateTime.Ticks:获取自公元1年1月1日午夜以来经过的时间刻度数。

DateTime dateTime = new DateTime(2023, 11, 21, 9, 30, 0);
long ticks = dateTime.Ticks;
Console.WriteLine(ticks);//637737774640000000

10、DateTime.Kind:获取日期时间对象的 DateTimeKind 值,指示其表示的时间是本地时间、协调世界时 (UTC) 还是未指定的类型。

DateTime dateTime = DateTime.Now;
DateTimeKind kind = dateTime.Kind;
Console.WriteLine(kind);//Local

方法:

1、DateTime.Compare:比较两个日期的大小。

DateTime date1 = new DateTime(2023, 11, 21);
DateTime date2 = new DateTime(2023, 11, 22);
int result = DateTime.Compare(date1, date2);
Console.WriteLine(result);//-1

2、DateTime.Equals:检查两个日期是否相等。

DateTime date1 = new DateTime(2023, 11, 21);
DateTime date2 = new DateTime(2023, 11, 21);
bool isEqual = DateTime.Equals(date1, date2);
Console.WriteLine(isEqual);//True

3、DateTime.IsLeapYear:检查指定的年份是否为闰年。

int year = 2024;
bool isLeapYear = DateTime.IsLeapYear(year);
Console.WriteLine(isLeapYear);//False

4、DateTime.ToString:将日期时间对象转换为字符串表示。

DateTime dateTime = new DateTime(2023, 11, 21, 9, 30, 0);
string dateString = dateTime.ToString("yyyy-MM-dd HH:mm:ss");
Console.WriteLine(dateString);//2023-11-21 09:30:00

5、DateTime.TryParse:尝试将字符串解析为 DateTime 对象,如果解析成功返回 true,否则返回 false。

string dateString = "2023-11-21";
DateTime date;
bool success = DateTime.TryParse(dateString, out date);
if (success)
{Console.WriteLine(date);
}
else
{Console.WriteLine("Invalid date format");
}//2023/11/21 00:00:00

6、DateTime.Now.AddDays:将指定的天数添加到当前日期中。

DateTime tomorrow = DateTime.Now.AddDays(1);
Console.WriteLine(tomorrow);//2023/11/22 21:26:04

7、DateTime.Now.AddMonths:将指定的月份数添加到当前日期中。

DateTime nextMonth = DateTime.Now.AddMonths(1);
Console.WriteLine(nextMonth);//2023/12/21 21:26:04

8、DateTime.Now.AddYears:将指定的年份数添加到当前日期中。

DateTime nextYear = DateTime.Now.AddYears(1);
Console.WriteLine(nextYear);//2024/11/21 21:26:04

9、DateTime.Now.AddHours:将指定的小时数添加到当前时间中。

DateTime newTime = DateTime.Now.AddHours(2);
Console.WriteLine(newTime);//2023/11/21 23:26:04

10、DateTime.Now.AddMinutes:将指定的分钟数添加到当前时间中。

DateTime newTime = DateTime.Now.AddMinutes(15);
Console.WriteLine(newTime);//2023/11/21 21:41:04

以上是一些常用的。

我们看到DateTime和DateTime.Now具有不少相同的属性和方法。但是它们并不是一样的,并且它们是代表不同的属性和方法。

DateTime结构中的属性,用于获取给定日期的年份部分。它接受一个DateTime对象,并返回该对象表示的日期的对应属性。

而DateTime.Now里面是属性是静态属性,相当于它已经定义好DateTime对象为当前日期的对象。

这点需要注意,得根据自己得需求进行相关调用。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/156045.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

听GPT 讲Rust源代码--src/librustdoc(2)

题图来自 Chromium项目将支持Rust编程语言[1] File: rust/src/librustdoc/html/render/search_index.rs 在Rust源代码中,rust/src/librustdoc/html/render/search_index.rs文件的作用是生成搜索索引,用于在Rust文档页面上进行关键字搜索。该文件实现了一…

【音视频-FFMPEG相关命令使用】

FFMPEG相关命令整理 视频格式转换 # ffmpeg -i srcVideo.format destVideo.format ffmpeg -i test.wmv test.mp4参考: ffmpeg wmv 转MP4 命令

战备器材管理系统-部队物资仓库管理系统

一、项目背景 传统的战备物资管理,一般依赖于一个非自动化的、以纸张文件为基础的系统来记录、追踪进出的货物,完全由人工实施仓库内部的管理,因此仓库管理的效率极其低下。对此,我们运用无线射频技术(RFID)的仓库智能管理系统&am…

qcow2、raw、vmdk等镜像格式工具

如果没有qemu,可以从这里下载安装:https://qemu.weilnetz.de/w64/

7、信息打点——资产泄露CMS识别Git监控SVNDS_Store备份

知识点: CMS指纹识别、源码获取方式习惯&配置&特征等获取方式托管资产平台资源搜索监控 如何获取源码 直接识别CMS,根据CMS获取网站源码。CMS直接识别工具:云悉指纹识别平台。识别不了CMS,则通过以下方式获取源码&…

DSP介绍及CCS

文章目录 CCS版本编译器CCS使用注意严禁中文 CCS的基本操作新建工程导入现有工程调整字体的大小工程界面恢复标签的使用 仿真盒小虫子进入在线Debug 芯片TMS320F28355基本介绍特性 DSP中特殊指令dsp指令中的EALLOW EDIS CCS TI官网 版本 CCS版本: CCS8.3.1.0004_…

〖大前端 - 基础入门三大核心之JS篇㊵〗- DOM事件监听及onxxx的使用

说明:该文属于 大前端全栈架构白宝书专栏,目前阶段免费,如需要项目实战或者是体系化资源,文末名片加V!作者:不渴望力量的哈士奇(哈哥),十余年工作经验, 从事过全栈研发、产品经理等工作&#xf…

多目标应用:基于非支配排序的鲸鱼优化算法NSWOA求解微电网多目标优化调度(MATLAB代码)

一、微网系统运行优化模型 微电网优化模型介绍: 微电网多目标优化调度模型简介_IT猿手的博客-CSDN博客 二、基于非支配排序的鲸鱼优化算法NSWOA 基于非支配排序的鲸鱼优化算法NSWOA简介: 三、基于非支配排序的鲸鱼优化算法NSWOA求解微电网多目标优化…

从android.graphics.Path中取出Point点,Kotlin

从android.graphics.Path中取出Point点&#xff0c;Kotlin /*** 从一条Path中获取多少个Point点*/private fun getPoints(path: Path, pointCount: Int): Array<FloatPoint?> {val points arrayOfNulls<FloatPoint>(pointCount)val pm PathMeasure(path, false)…

SpringBoot——数据访问

优质博文&#xff1a;IT-BLOG-CN 对于数据访问层&#xff0c;无论是SQL还是NoSQL&#xff0c;SpringBoot默认采用整合Spring Data的方式进行统一处理&#xff0c;添加大量自动配置&#xff0c;屏蔽了很多设置。引入各种xxxTemplate&#xff0c;xxxRepository来简化我们对数据访…

MySQL索引,你真的学会了?索引底层原理是什么?索引什么时候失效,你知道吗?

目录 1、什么是索引 2、索引分类 3、索引的基本操作 3.1、主键索引 3.2、单列索引 3.3、唯一索引 3.4、复合索引 4、索引的底层原理 为什么使用BTree而不是B-Tree? 如果数据量特别大的情况下&#xff0c;BTree会不会深度太深影响查询效率&#xff1f; 5、聚簇索引和…

OpenGL_Learn15(投光物)

1. 平行光 cube.vs******************#version 330 core layout (location 0) in vec3 aPos; layout (location 1 ) in vec3 aNormal; layout (location2) in vec2 aTexCoords;out vec3 FragPos; out vec3 Normal; out vec2 TexCoords;uniform mat4 model; uniform mat4 view…

车牌识别 支持12种中文车牌类型 车牌数据集下载

开源代码 如果觉得有用&#xff0c;不妨给个Star⭐️&#x1f31f;支持一下吧~ 谢谢&#xff01; Acknowledgments & Contact 1.WeChat ID: cbp931126 2.QQ Group&#xff1a;517671804 加微信(备注&#xff1a;PlateAlgorithm),进讨论群可以获得10G大小的车牌检测和识…

vue3的单组件编写【一】

文章目录 :tiger: 单组件的编写:rainbow:全新的 setup 函数:rocket: setup 的含义:rocket:setup 的参数使用:rocket: defineComponent 的作用 :rainbow: 组件的生命周期:rocket: 升级变化:rocket: 使用 3.x 的生命周期 :rainbow: 组件的基本写法:rocket: 回顾 Vue 2:rocket: 了…

DPAFNet:一种用于多模式脑肿瘤分割的残差双路径注意力融合卷积神经网络

DPAFNet: A Residual Dual-Path Attention-Fusion Convolutional Neural Network for Multimodal Brain Tumor Segmentation DPAFNet&#xff1a;一种用于多模式脑肿瘤分割的残差双路径注意力融合卷积神经网络背景贡献实验方法ulti-scale context feature extraction block&…

【Spring】之IoC与对象存取

未来的几周时间&#xff0c;大概率我会更新一下Spring家族的一些简单知识。而什么是Spring家族&#xff0c;好多同学还不是很清楚&#xff0c;我先来简单介绍一下吧&#xff1a; 所谓Spring家族&#xff0c;它其实就是一个框架&#xff0c;是基于Servlet再次进行封装的内容。为…

VMware——WindowServer2012R2环境安装mysql5.7.14解压版_互为主从(图解版)

目录 一、服务器信息二、192.168.132.35服务器上安装mysql&#xff08;主&#xff09;2.1、环境变量配置2.2、安装2.2.1、修改配置文件内容2.2.2、初始化mysql并指定超级用户密码2.2.3、安装mysql服务2.2.4、启动mysql服务2.2.5、登录用户管理及密码修改2.2.6、开启远程访问 三…

C++函数

转载知呼大佬06 - C函数 - 知乎 (zhihu.com) 06 - C函数 本期我们讨论的是 C 中的函数。 函数到底是什么呢&#xff0c;函数就是我们写的代码块&#xff0c;被设计用来执行特定的任务&#xff0c;以后我们学习 class 类的时候&#xff0c;这些块会被称为方法&#xff0c;但是…

windows电脑连接Android和iPhone真机调试

windows电脑连接Android和iPhone真机调试 目前用的是Hbuilder X编辑器&#xff0c;在正常情况下&#xff0c;Android手机需要在 "设置 ----> 更多设置 ----->关于手机 ------> 版本号&#xff08;手指点击5-7下即可打开开发者模式&#xff09;"(我的是vivo的…

hosts 配置本地映射不生效

关闭所有科学上网工具&#xff01;&#xff01;刷新 DNS 解析缓存&#xff1a;ipconfig /flushdns关闭所有浏览器访问映射地址时&#xff0c;带上端口号