Cri*_* E. 0 c# datetime datetime-format
我将尝试举例说明:
var dateNow = DateTime.Now.ToString("dd/MM/yyyy HH:mm:ss");
Run Code Online (Sandbox Code Playgroud)
产生:10/01/2014 21:50:34
var dateNowParse = DateTime.Parse(DateTime.Now.ToString("dd/MM/yyyy HH:mm:ss"));
Run Code Online (Sandbox Code Playgroud)
产生:10/01/2014 9:50:34 PM
题:
如何解析日期,并保持格式如: dd/MM/yyyy HH:mm:ss,24小时格式,没有任何PM
谢谢!
对不起,也许我的问题不是那么清楚,我会试着解释下面的实际情况.
请不要专注于真正的含义DateTime.Now,假设我们有一个string格式的变量10/01/2014 21:50:34,然后我尝试解析它,并将结果存储在另一个变量中.我愿意实现的是将结果保存在具有确切格式的DateTime变量中10/01/2014 21:50:34.
现在这里是一个片段:
var stringDate = "10/01/2014 22:50:30";
DateTime parsedDate = DateTime.Parse(stringDate, CultureInfo.InvariantCulture);
//parsedDate result is: 10/01/2014 10:50:30 PM
Run Code Online (Sandbox Code Playgroud)
让我感到沮丧的是:
在stringDate该22:50时间表示,字符串格式化为24小时制.(12时钟格式使用小时计数器最多12个)
如果我使用22:50,逻辑上不是输出不应该使用任何AM PM和12小时格式?
如何解析日期,并保持格式
如果需要,您需要将格式保留在旁边DateTime.一个DateTime不会不具有的特定格式是任何概念.的值DateTime通过返回的Parse不是"2014年10月1日下午9点50分34秒" -这是特定的日期和时间,而不是一个字符串表示.
您可以使用一种类型将两者保持在一起 - 或者如果您始终希望以相同的方式进行格式化,则只需在格式化时明确指定该格式,而不将其保留为DateTime值的数据.
就个人而言,我会尽量坚持DateTime.ParseExact可行,因为我发现它更容易预测它会做什么 - 但它确实取决于你的输入.如果它的输入采用您期望的特定格式,那么ParseExact实际上就是前进的方向,可能采用不变的文化来避免任何文化差异.
| 归档时间: |
|
| 查看次数: |
984 次 |
| 最近记录: |