C# DateTime.today()在administrator中的运行方式不同
我住在加拿大,C# DateTime.today()在administrator中的运行方式不同,c#,datetime,C#,Datetime,我住在加拿大,DateTime。今天格式被记录为dd/mm/yyyy。奇怪的是,当我以管理员身份运行应用程序时,它会记录日期时间。Today格式为mm/dd/yyyy 还有什么我可以检查的吗?或者它是计算机日期时间设置?日期时间对象在内部不是以天和月表示的,因此它本身实际上没有任何本机格式。(这里也没有DateTime.Today()方法,而是一个属性DateTime.Today) DateTime(其中DateTime.Today返回的实例)确实有一个ToString()方法,该方法声明为:
DateTime。今天
格式被记录为dd/mm/yyyy
。奇怪的是,当我以管理员身份运行应用程序时,它会记录日期时间。Today
格式为mm/dd/yyyy
还有什么我可以检查的吗?或者它是计算机日期时间设置?日期时间对象在内部不是以天和月表示的,因此它本身实际上没有任何本机格式。(这里也没有
DateTime.Today()
方法,而是一个属性DateTime.Today
)
DateTime(其中DateTime.Today返回的实例)确实有一个ToString()
方法,该方法声明为:
public override string ToString()
{
return DateTimeFormat.Format(this, (string) null, DateTimeFormatInfo.CurrentInfo);
}
对于机器上的不同用户,CurrentInfo
将是不同的。某些操作将隐式调用ToString()
(例如Console.WriteLine
)
好消息是ToString()
有重载,因此您可以执行以下操作
Console.Write(DateTime.Today.ToString("dd/MM/yyyy"));
(或任何
IFormatProvider
)是,这取决于用户在Windows设置中设置的区域性和日期格式。请注意,自定义日期和时间格式字符串区分大小写mm
表示分钟,例如,mm
表示月份。谢谢,我强制它显示为dt.Now.ToString(“dd/mm/yyyy hh:mm:ss tt”);它是有效的。两者在管理员模式和普通用户模式下显示相同的结果。