Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/321.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何在将日期格式设置为其他格式的机器中获取格鲁吉亚日期格式?_C#_.net_Windows_Winforms_Datetime - Fatal编程技术网

C# 如何在将日期格式设置为其他格式的机器中获取格鲁吉亚日期格式?

C# 如何在将日期格式设置为其他格式的机器中获取格鲁吉亚日期格式?,c#,.net,windows,winforms,datetime,C#,.net,Windows,Winforms,Datetime,我将我的机器(win 10)日期格式更改为波斯语,现在运行此代码时: DateTime date = DateTime.Now; System.Diagnostics.Debug.WriteLine(date); 我得到了这个结果:19/09/1396 10:41:45ب 如何将此结果更改为2017/12/10 10 10:45 pm 是否有任何配置可以将整个应用程序日期格式更改为格鲁吉亚语?如果您只更改了计算机的日期格式,那么您会明确告诉它使用该格式,而不考虑区域性,因此更改计算机的区域性将

我将我的机器(win 10)日期格式更改为波斯语,现在运行此代码时:

DateTime date = DateTime.Now;
System.Diagnostics.Debug.WriteLine(date);
我得到了这个结果:
19/09/1396 10:41:45ب

如何将此结果更改为2017/12/10 10 10:45 pm


是否有任何配置可以将整个应用程序日期格式更改为格鲁吉亚语?

如果您只更改了计算机的日期格式,那么您会明确告诉它使用该格式,而不考虑区域性,因此更改计算机的区域性将不起作用。如果不想以该格式显示日期,请将计算机日期格式更改回所需格式。

您需要使用正确的区域性设置日期格式:

static void Main()
{
    DateTime date = DateTime.Now;
    System.Diagnostics.Debug.WriteLine(

        date.ToString("yyyy/MM/dd hh:mm tt", System.Globalization.CultureInfo.GetCultureInfo("en-us", "en")));

    Console.ReadLine();
}
我提供了一个用户定义的格式字符串,因为美国格式似乎更喜欢e-to/

链接:


如果您总是需要这种格式,您可以为我们缓存CultureInfo,并将输出打包到函数中以方便使用。

我最终使用@Patrick Atrner guide并将这行代码添加到我的Program.CS文件中,我的问题得到了解决

   Thread.CurrentThread.CurrentUICulture = new System.Globalization.CultureInfo("fa-IR");
   Thread.CurrentThread.CurrentCulture = new System.Globalization.CultureInfo("en-US");

string.Format()
函数上进行谷歌搜索,并了解如何设置不同日期的格式。。另外看看
CultureInfo或Culture等。
您能告诉我们您在将
日期转换为
yyyy/dd/mm
格式方面做了哪些尝试吗..我将我的线程CurrentUICulture设置为System.Globalization.CultureInfo(“fair”)或System.Globalization.CultureInfo(“en-us”)但是没有结果。据我们所知,你把它设为德语或别的什么。。我的观点是,如果您不发布与当前应用程序相关的实际代码,那么谁能帮助您呢issue@Navid_pdp11看起来您需要设置thread
CurrentCulture
属性,除了
CurrentUICulture
之外,是否有任何方法可以在应用程序范围中指定日期格式?我需要以格鲁吉亚格式获取此日期和无字符串数据类型…因为我使用的是日期选择器库,我需要设置其默认值。。。但是当我改变我的机器格式时,它就进入了崩溃模式。。我使用的是Farsiliberry,它位于这个链接:@Navid_pdp11阅读所有这些文化内容都是关于显示的-下面的数据是一样的-没有person和Gregorian DateTime对象-只是数据以不同的方式呈现。请按照aksed的要求做多次,并将您使用的代码张贴到问题中,这样我们就可以停止猜测您需要什么,看看您做了什么。:)这可能有效,但您正在强制应用程序以可能不同于用户在其计算机上设置的区域性的方式显示信息。一般来说,这是一个坏主意,因为用户希望看到其区域性格式的数据。充其量,这会让最终用户感到困惑,您也可以使用特定的格式,而不是文化感知格式。