微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

DateTime 格式在 VS 社区版中返回错误的格式,但在专业版中工作正常

如何解决DateTime 格式在 VS 社区版中返回错误的格式,但在专业版中工作正常

下面是我的代码

df['amount'] = df['amount'].apply(lambda x: 0 if x < 0 else x)

当我们在 Visual Studio 社区版 (16.9.4) 中执行上述代码时,它返回 25-Apr-2021 21.35.02 而不是 25/Apr/2021 21: 35:02

如果我们在 Visual Studio 专业版 (16.9.4) 中执行相同的代码,那么它工作正常。它总是返回 25/Apr/2021 21:35:02

所有项目类型都会出现此问题,例如 .net5、Core 3.1、.net 标准框架、.net 4.5(控制台、Web、Xamarin、WPF 和桌面应用程序)。

有人可以指导如何在 VS 社区版中解决此问题吗?

解决方法

如果您使用 /,则您使用的是 custom format specifier /,它执行以下操作:将其替换为当前区域性的日期分隔符,在您的情况下似乎是 -

您有两个选项可以阻止它,传递InvariantCulture

Console.WriteLine(dt.ToString("dd/MMM/yyyy HH:mm:ss",CultureInfo.InvariantCulture));

通过将格式说明符包裹在刻度 ' 中来转义它:

Console.WriteLine(dt.ToString("dd'/'MMM'/'yyyy HH:mm:ss"));

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。