代码之家  ›  专栏  ›  技术社区  ›  randbrown

如何用01-24而不是00-23表示.NET DateTime 24小时格式?

  •  5
  • randbrown  · 技术社区  · 14 年前

    这将是一个配置选项,在我们的软件,所以我仍然需要支持正常的00-23以及,所以我希望我可以做到这一点,以某种方式与格式字符串。但我也在考虑使用正则表达式来后置处理结果字符串,如果这样做更容易的话。

    谢谢!

    2 回复  |  直到 14 年前
        1
  •  2
  •   codekaizen    14 年前

    public class BusinessDateTimeFormatter
    {
        public BusinessDateTimeFormatter(DateTime dateTime)
        {
            _dateTime = dateTime;
        }
    
        public override string ToString()
        {
            return String.Format("{0} {1}:{2}", _dateTime.Date, _dateTime.Hour + 1, _dateTime.Minute);
        }
    }
    

    或者,甚至更正确地说,您可以创建一个表示业务的DateTime概念的类型。在面向对象设计中,这种用自定义类型替换基本类型的情况经常发生,因为要建模的域具有特殊的限制,就像您描述的那样。