c# - 获取独立于我当前 UI 文化的特定文化的 Utc 日期时间

标签 c# .net datetime cultureinfo

如果我的应用程序是阿拉伯文化,那么 DateTime.UtcNow 会为我们提供阿拉伯语日期时间,例如 "13/05/1435 09:40:45 õ" 但我需要在 en-US 中使用我的用户所使用的任何文化。

当我强制将此日期转换为我们的文化时,它给我一个错误。即使在这样的阿拉伯文化中,获取 en-US 日期时间的更好方法是什么“14/03/2014 09:40:45 AM”

var us = DateTime.Now.ToString("dd/MM/yy HH:mm:ss tt",
            new System.Globalization.CultureInfo("en-US"));

            string st = us.ToString();

            DateTime ddt = Convert.ToDateTime(st,
            new System.Globalization.CultureInfo("en-US"));

en-US 中再次从 st 转换为 DateTime 时 当应用程序处于阿拉伯文化时,它会抛出错误。 enter image description here

@lastr2d2 先生

提前致谢。

最佳答案

这是你排除的吗?

var ar = DateTime.Now.ToString("dd/MM/yy HH:mm:ss tt",
            new System.Globalization.CultureInfo("ar-AE"));
// 14/03/14 06:14:34 ص
var us = DateTime.Now.ToString("dd/MM/yy HH:mm:ss tt",
            new System.Globalization.CultureInfo("en-US"));
// 14/03/14 06:14:44 AM

--编辑

你可以通过 DateTime.ParseExact 获取日期时间实例:

var datetime = DateTime.ParseExact(us,"dd/MM/yy HH:mm:ss tt",
            new System.Globalization.CultureInfo("en-US"));

关于c# - 获取独立于我当前 UI 文化的特定文化的 Utc 日期时间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22397234/

相关文章:

c# - 为用户分配角色 DSharpPlus

c# - Instagram OAuth 2.0 授权(注册重定向 URI)。我还应该注册 WWW.* 版本的 URI 吗?

c# - 方法注入(inject)(DI、.NET、IOC)

具有本地存储日期的智能手机(android,ios)的 HTML5 应用程序()

mysql - 如何使用 UTC 格式的 CURRENT_TIMESTAMP 而不是 LOCALTIME 将记录保存在 MYSQL 数据库中?

不完整时间序列数据的运行平均值

c# - 样式表未正确加载或链接

c# - 在 C# 中隐藏大括号

.Net 4.0 应用程序在 64 位上比 32 位慢(分析和可能的解决方案)(应用程序使用 NetAdvantage)

.net - 将两个或多个 Visual Studio 项目合并为一个项目