如何在 ASP.Net 中剪切日期时间数据类型

本文关键字:日期 时间 数据类型 ASP Net | 更新日期: 2023-09-27 18:28:23

我有一个日期时间数据类型12/30/2015 11:30:00 AM所以,而在SQL服务器上,它会fromDate.ToString ("yyyy-MM-dd HH: mm tt")结果是2016-01-01 12: 30: 00,000,我想只削减字符串数据部分几天,小时和分钟

如何在 ASP.Net 中剪切日期时间数据类型

更改您的

.ToString ("yyyy-MM-dd HH: mm tt") 
//showing: year (yyyy), month (MM), day of month (dd), hour (HH), minute (mm), and "The AM/PM designator" (tt)

.ToString ("dd HH:mm")
//showing: day of month (dd), hour (HH), and minute (mm) only

有关DateTime格式的更多信息,您可能会发现非常有用。解释是用方便的样本给出的,并且非常完整。

编辑:

要解释来自SQL的文本数据,请使用.Substring(int index, int length)

string text = sqltext.Substring(("2016-01-").Length, 9); //the 9 must be from your days to your minutes. If the text string is shorter/longer, change this value

以下是两个Substring参数的解释:

  1. index参数从文本的偏移量开始0

    假设您的文本是2016-01-01 12: 30: 00,000那么index = 0将指向第一个2index = 1指向第一个0,依此类推。要获取日期部分的第一个数字0,您需要根据您的输入具有7索引。但是确定index的更简单方法是在您想要的位置之前获取所有string并抓住其Length(这就是我展示的:"2016-01-").Length .

  2. length参数给出了从index点开始要采用的字符数。

    由于你想取总共由9个字符组成的01 12: 30(注意你的white spaces(,你应该把9。或者你也可以通过放("01 12: 30").Length来更通用:

    string text = sqltext.Substring(("2016-01-").Length, ("01 12: 30").Length);
    

詹姆斯先生的补充说明(见评论(:"请注意,为这个答案给出的'天'是月份中的某一天,在任何情况下都不能超过31......如果你想要从某个基线日期算起的天数,你必须做DateTime减法并使用TimeSpan.ToString