English 中文(简体)
• 如何用HHH:mm:s = 00:00:00而不是 12:00:00?
原标题:How to set datetime with HH:mm:ss = 00:00:00 instead of 12:00:00?
DateTime a1 = new DateTime(Convert.ToDateTime(txtStartDate.Text).Year, Convert.ToDateTime(txtStartDate.Text).Month, Convert.ToDateTime(txtStartDate.Text).Day, 0, 0, 0);

I have tried to change system time from 12 hrs hh to 24 hours HH and restart web site insert still is 12:00:00

我想:00:00:00

问题回答

你所看到的是formatting issue,而不是data问题。 确实是00:00:00,但是,你把它改成一个扼杀装置,显示它为 12:00:00,大概是含蓄的“am”。 Don tabe, a Datetime don t actual have/em> a Format in it - it s only the day/time. 你们可以适当安排,例如,

Console.WriteLine(a1.ToString("yyyy-MM-dd HH:mm:ss"));

除此以外,我强烈建议不要以这种方式创建<条码>。 个人更喜欢使用<代码>Datetime.TryParseExact或Datetime.ParseExact,而不是使用“无论目前文化的格局如何选择”,但即使您希望与Convert.ToDatetime上调,更清楚一度使用,然后使用<<>Date<<<<>>>t>/code>,在规定时间为0:

DateTime a1 = Convert.ToDateTime(txtStartDate.Text).Date;

技术上,时间已到00:00:00。 在11:59:59之后,它成为12:00:00。 也许我不理解你试图做些什么:

你在法典中可以有特别的逻辑,这样,如果是12:00,那么就显示它为00:00:00。 但是,在盒子中,没有显示这样做的魔法或格式。

您可以通过规定一种形式来简化这一界限:

DateTime a1 = DateTime.Parse(string.Format("{0} 00:00:00", "01/27/2011"),
                                         CultureInfo.GetCultureInfo("en-US"));

我不知道你的文本箱是什么格式,但假定是01/27/2011(美国格式),你可以很容易地改变上述版本:

DateTime a1 = DateTime.Parse(string.Format("{0} 00:00:00", txtStartDate.Text),
                                         CultureInfo.GetCultureInfo("en-US"));

更改<代码>CultureInfo.GetCultureInfo (单位:IFormatProvider)至您重新使用。 理想的情况是,你应将这个日期划为万国邮联的日期,但这是一个不同的讨论。

“datetime”/

当你想添加一个日期反对或希望以某种形式显示这种反对时,自动使用“TString()-Method”。 ToString(en-US)将“en-US”作为缺省文化。 你可以人工叫ToString(),并将它与你希望但有时是不可能的任何文化信息联系起来。

如果你通过具有数据约束力的数据进入时标,你就可以通过任何文化信息,最终在“en-US”中确定地方性的日期。 在此情况下,你需要把文化信息作为目前的内容:

Thread.CurrentThread.CurrentCulture = CultureInfo.CreateSpecificCulture("de-DE");

这条线路被称作“de-DE”的所有日期,只要你没有用手法向具有不同文化信息的人提供。

可查阅:https://msdn.microsoft.com/en-us/library/k494fzbf(v=vs.110.aspx

你可以简化

if (!string.IsNullOrEmpty(txtStartDate.Text))
            {
                string startDate = Convert.ToDateTime(txtStartDate.Text).ToString("yyyy-MM-dd HH:mm:ss", CultureInfo.InvariantCulture);
            }




相关问题
Anyone feel like passing it forward?

I m the only developer in my company, and am getting along well as an autodidact, but I know I m missing out on the education one gets from working with and having code reviewed by more senior devs. ...

How to Add script codes before the </body> tag ASP.NET

Heres the problem, In Masterpage, the google analytics code were pasted before the end of body tag. In ASPX page, I need to generate a script (google addItem tracker) using codebehind ClientScript ...

Transaction handling with TransactionScope

I am implementing Transaction using TransactionScope with the help this MSDN article http://msdn.microsoft.com/en-us/library/system.transactions.transactionscope.aspx I just want to confirm that is ...

System.Web.Mvc.Controller Initialize

i have the following base controller... public class BaseController : Controller { protected override void Initialize(System.Web.Routing.RequestContext requestContext) { if (...

Microsoft.Contracts namespace

For what it is necessary Microsoft.Contracts namespace in asp.net? I mean, in what cases I could write using Microsoft.Contracts;?

Separator line in ASP.NET

I d like to add a simple separator line in an aspx web form. Does anyone know how? It sounds easy enough, but still I can t manage to find how to do it.. 10x!