【问题标题】:Storing DateTime into Array in c#在c#中将日期时间存储到数组中
【发布时间】:2016-11-25 00:13:11
【问题描述】:

我已经为我的DateTime 初始化了一个数组。

DateTime[] departureCalcArray = new DateTime[10];

然后获取格式为h:mm ttDateTimePicker 的值(即上午8:30,前面没有零)。

我用于存储DateTimePicker 值的代码如下。

departureCalcArray[i] = timeDeparture.Value.Date;

但是,当我检查该值是否通过 MessageBox.Show(); 保存时 我不断收到今天和凌晨 12:00:00 的日期。虽然回到 PHP 中,但我习惯将时间转换为 24 小时格式,以便在计算中使用它。有什么帮助吗?

【问题讨论】:

  • timeDeparture.Value.Date; -> timeDeparture.Value;
  • @MathiasR.Jessen 它仍然是 12:00:00 AM,我想将其格式化为 24 小时,以便我可以将其用于计算。
  • 一条建议,永远不要使用 DateTime。使用日期时间偏移。即使你认为你不需要这样做,从长远来看,它也会为你省去很多悲伤

标签: c# winforms datetime


【解决方案1】:

改变

departureCalcArray[i] = timeDeparture.Value.Date;

departureCalcArray[i] = timeDeparture.Value;

当您使用DateTime 实例的Date property 时,您将获得一个具有相同日期的新DateTime 实例,但其时间组件设置为上午12:00

【讨论】:

  • 如果可能的话,我只是想抽出时间。
  • @Fiendcoder1 不完全确定我理解 - 如果您对日期不感兴趣,只对时间感兴趣,您可能想要获取 TimeOfDay 属性并将其存储在 TimeSpan[]
  • 是的,因为我已经在我的 winform 的不同列和出发和到达列中有一个日期。如果用户选择之前的 11:59:99 和之后的 12:00:00,我有一个公式。所以我只想抓紧时间。
  • 你好。我已经关注了这个stackoverflow.com/questions/8337625/… 中的最佳答案。我得到了我想要的,但我怎么能把它存储为HH:mm
  • ToString("HH:mm")
【解决方案2】:

我无法发表评论,因为我刚刚开通了这个帐户。 这个答案与cmets中关于如何更改为HH的对话有关:mm

DateTimePicker.ShowUpDown = true;
DateTimePicker.CustomFormat = "hh:mm";
DateTimePicker.Format = System.Windows.Forms.DateTimePickerFormat.Custom;

致谢:DateTime Picker In WinForm How To Pick Time?

【讨论】:

    猜你喜欢
    • 2018-02-09
    • 2012-01-30
    • 2011-04-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-08-07
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多