c# - 格式化 .NET DateTime "Day",不带前导零

标签 c# datetime formatting

对于以下代码,我希望 result 等于 2,因为 MSDN 声明“d”“将月份中的日期表示为从 1 到 31 的数字。一位数day 的格式没有前导零。"。

DateTime myDate = new DateTime( 2009, 6, 4 );
string result = myDate.ToString( "d" );

但是,result 实际上等于 '6/4/2009' - 这是短日期格式(也是 'd')。我可以使用“dd”,但这会添加一个前导零,这是我不想要的。

最佳答案

要表明这是一个自定义格式说明符(与标准格式说明符相反),它必须是两个字符长。这可以通过添加空格(将显示在输出中)或在单个字母前添加百分号来实现,如下所示:

string result = myDate.ToString("%d");

documentation

关于c# - 格式化 .NET DateTime "Day",不带前导零,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/988353/

相关文章:

python - matplotlib 和 dateutil 的弃用警告

php - 如何添加具体编号几个月到 UNIX 时间戳格式的日期?

c# - 以不同位数重新启动 .NET AnyCPU exe

c# - 我应该如何处理基于 C++ 的 dll 中的错误?

c# - 使用流利的 nhibernate 的通用查找表

ruby - 如何在 ruby​​ 中创建平面文件

java - 是否有使用缓存格式的 String.format 替代品?

c# - 如何确保 List<String> 只包含序列中的每个字符串一次

java - 将 java.sql.Date 类型的对象分配给 java.util.Date 变量是否安全?

java - 了解 JodaTime DateTime.parse(string, formatter)