📅  最后修改于: 2023-12-03 15:00:16.646000             🧑  作者: Mango
DateTime.ToString()
方法在C#中常用于将日期和时间值转换为符合指定格式的字符串。
public string ToString(string format);
public string ToString(IFormatProvider provider);
format
: 可选参数,指定返回字符串的格式。可以是预定义格式字符串或自定义格式字符串。默认使用标准格式字符串。provider
: 可选参数,一个 IFormatProvider
接口实现,提供定义数字和日期/时间格式的对象。DateTime now = DateTime.Now;
string dateStr = now.ToString("yyyy-MM-dd");
string timeStr = now.ToString("HH:mm:ss");
上面代码中,我们生成了当前日期时间的实例now
,并调用now.ToString()
方法,将日期和时间转换成了符合指定格式的字符串。其中,"yyyy-MM-dd"
和"HH:mm:ss"
都是预定义的格式字符串。
以下是常用的预定义格式字符串:
d
: 短日期格式,如 2022/2/23D
: 长日期格式,如 2022年2月23日f
: 长日期时间格式,如 2022年2月23日 下午8:30F
: 全日期时间格式,如 2022年2月23日 星期三 下午8:30:30g
: 一般日期时间格式,如 2022/2/23 下午8:30G
: 通用日期时间格式,如 2022/2/23 下午8:30:30m
: 月日格式,如 2月23日M
: 月日格式,如 2月23日o
: ISO 8601日期格式,如 2022-02-23T20:30:30.0000000+08:00R
: RFC1123日期格式,如 Wed, 23 Feb 2022 12:30:30 GMTs
: 可排序日期时间格式,如 2022-02-23T20:30:30t
: 短时间格式,如 下午8:30T
: 长时间格式,如 下午8:30:30u
: 未指定时区的 UTC 日期时间格式,如 2022-02-23 12:30:30ZU
: UTC 完整日期时间格式,如 2022年2月23日 下午12:30:30y
: 年月格式,如 2022年2月以上格式字符串均可在ToString
方法中作为参数使用,例如:
DateTime now = DateTime.Now;
string dateStr = now.ToString("U");
以上代码将当前日期时间转换为完整的 UTC 日期时间格式。
除了预定义格式字符串,ToString
方法还支持自定义格式字符串。自定义格式字符串由以下标识符组成:
d
: 日期,格式由/
分隔符隔开,如 yyyy/MM/dd
表示年/月/日t
: 时间,格式由:
分隔符隔开,如 HH:mm:ss
表示时/分/秒f
: 时间和日期,如 yyyy-MM-dd HH:mm:ss
表示年-月-日 时:分:秒F
: 时间和日期,如 yyyy年MM月dd日 HH时mm分ss秒
表示年月日 时分秒g
: 通用日期短时间,如 yyyy-M-d H:m:s
表示年-月-日 时:分:秒G
: 通用日期时间,如 yyyy-M-d H:m:s
表示年-月-日 时:分:秒%
: 转义字符,将后面的字符视为普通字符串例如:
DateTime now = DateTime.Now;
string dateStr = now.ToString("yyyy年MM月dd日 HH:mm:ss");
以上代码将当前日期时间转换为形如“2022年02月23日 20:30:30”的字符串。
hh:mm:ss
和 HH:MM:SS
都可以表示小时:分钟:秒钟。mm
表示分,而MM
表示月。以上就是关于C#中DateTime.ToString()
方法的介绍。ToString()
方法非常灵活,支持多种预定义和自定义格式字符串,可以满足大部分的日期时间格式化需求。