Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/261.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#_Datetime_Localization - Fatal编程技术网

C# 使用自定义模式本地化日期时间

C# 使用自定义模式本地化日期时间,c#,datetime,localization,C#,Datetime,Localization,我正在为一个应用程序进行本地化,该应用程序使用自定义模式来格式化日期和时间 一个例子是: dd-MM-HH:MM 我需要为日期获取这种自定义格式的本地化版本,以便使用数字获取日期和时间,基本上使用本地顺序(dd-MM或MM-dd)和本地分隔符获取日期和时间 这相当简单,只要我使用默认格式,但一旦我偏离这些,格式就变成硬编码 有什么想法吗 谢谢你,乔纳斯 编辑: 我有cultureInfo对象,问题是当我执行DateTime.ToString(“ES”)时,我得到的信息太多了-我只需要月+日,但使

我正在为一个应用程序进行本地化,该应用程序使用自定义模式来格式化日期和时间

一个例子是: dd-MM-HH:MM

我需要为日期获取这种自定义格式的本地化版本,以便使用数字获取日期和时间,基本上使用本地顺序(dd-MM或MM-dd)和本地分隔符获取日期和时间

这相当简单,只要我使用默认格式,但一旦我偏离这些,格式就变成硬编码

有什么想法吗

谢谢你,乔纳斯

编辑:
我有cultureInfo对象,问题是当我执行DateTime.ToString(“ES”)时,我得到的信息太多了-我只需要月+日,但使用默认的ToString,我得到年+月+日

再次编辑: 我知道如何为我使用的每个CultureInfo对象更改短日期模式。然而,在某些情况下,我还需要默认的ShortDate模式,因此,不幸的是,更改它会给我留下另一个相同的问题


最终编辑:以防有人在意。我从未找到解决方案,因此我编写了一个静态函数,用于检查当前的CultureInfo,并返回格式正确的日期(无年份)。

该类将是开始查找的好地方。

该类将是开始查找的好地方。

也许您可以尝试以下方法:

DateTime.Now.ToString(new System.Globalization.CultureInfo(Thread.CurrentThread.CurrentCulture.Name));
例如,如果我想显示特定区域性的时间,我会这样做:

DateTime.Now.ToString(new System.Globalization.CultureInfo("ES-es"))

cultureinfo充当IFormatProvider。

也许您可以尝试以下方法:

DateTime.Now.ToString(new System.Globalization.CultureInfo(Thread.CurrentThread.CurrentCulture.Name));
例如,如果我想显示特定区域性的时间,我会这样做:

DateTime.Now.ToString(new System.Globalization.CultureInfo("ES-es"))

cultureinfo充当IFormatProvider。

查看DateTimeFormatInfo类(cultureinfo.DateTimeFormat属性),特别是属性DateSeparator、TimeSeparator、ShortDatePattern。

查看DateTimeFormatInfo类(cultureinfo.DateTimeFormat属性),特别是属性DateSeparator、TimeSeparator、,ShortDatePattern.

我有cultureInfo对象,问题是当我执行DateTime.ToString(“ES”)时,我得到的信息太多-我只需要月+日,但默认的ToString,我得到的是年+月+日。我有cultureInfo对象,问题是当我执行DateTime.ToString(“ES”)时,我得到的信息太多-我只需要月+日,但是使用默认的ToString,我得到年+月+日.DateTime.Now.ToString(“dd-MMM-yy”,new-System.Globalization.CultureInfo(“es-CO”)——这是一个包括format.DateTime.Now.ToString(“dd-MMM-yy,new-System.Globalization.CultureInfo(“es-CO”)——这是一个包含format的示例。