如何设置DateTime的正确格式?

Tom*_*man 2 c# datetime

我想以格式打印DateTime HH:mm:ss.这是当前的代码

DateTime.Now.ToString("T");
Run Code Online (Sandbox Code Playgroud)

这给我格式: HH:mm:ss:fff

我发现CultureInfo可以提供帮助,所以我将代码转换为

DateTime.Now.ToString("T", new CultureInfo(fr-FR))
Run Code Online (Sandbox Code Playgroud)

要么

DateTime.Now.ToString("T", new CultureInfo(hr-HR))
Run Code Online (Sandbox Code Playgroud)

没有变化.你能帮助我吗?

Son*_*nül 7

"T"格式说明使用LongTimePattern你所使用的区域性设置属性.此属性会更改文化设置.

例如; 它可以是h:mm:ss tt,H:mm:sshh:mm:ss tt等.

InvariantCulture使用HH:mm:ss格式正是你想要的.只需InvariantCulture在您的ToString方法中作为第二个参数传递,您就可以了.

DateTime.Now.ToString("T", CultureInfo.InvariantCulture);
Run Code Online (Sandbox Code Playgroud)

或者您可以使用自定义日期和时间格式 ;

DateTime.Now.ToString("HH:mm:ss", CultureInfo.InvariantCulture);
Run Code Online (Sandbox Code Playgroud)

顺便说一句,fr-FR文化使用HH:mm:ssLongTimePattern,但是hr-HR培养中使用的H:mm:ss格式.