gpt4 book ai didi

c# - C# 中的自定义日期时间格式

转载 作者:行者123 更新时间:2023-12-02 05:47:13 27 4
gpt4 key购买 nike

我有一个使用以下字符串格式打印出来的变量:

var printThis = String.Format("{0:d}, {0:T}", dateAndTimeVar);

现在我有一个问题;当我没有为“dateAndTimeVar”设置任何时间时,我需要“{0:T}”来显示类似“--.--.--”的内容。这似乎不支持使用常规 DateTime 类型(如果没有设置时间,则默认显示“00.00.00”)。

我可以将“dateAndTimeVar”变量更改为任何内容(包括其他类型),但字符串格式必须保持不变。

有什么解决办法吗?

最佳答案

您需要创建自己的 IFormatProvider 并将其传递到 String.Format 方法,如下所示

String.Format(new MyFormatProvider(), "{0:d}, {0:T}", dateAndTimeVar);

然后,FormatProvider 将对除 T 之外的所有格式进行传递,您将有逻辑输出 DateTime 的 native T 格式或 --.--.-- 如果 DateTime 的时间部分为00:00:00。

在 MSDN 上了解 IFormatProvider here

关于c# - C# 中的自定义日期时间格式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13645035/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com