Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/25.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# 如何在不更改格式的情况下返回DateTime_C#_.net_Datetime_Culture - Fatal编程技术网

C# 如何在不更改格式的情况下返回DateTime

C# 如何在不更改格式的情况下返回DateTime,c#,.net,datetime,culture,C#,.net,Datetime,Culture,我有一个DateTime列表,我想获得DateTime的一些格式,用于显示时分秒。例如,我有2015年12月22日下午4点32分的英语美国文化,如果我使用bg bg,那么我将返回2015年12月16点32分的英语口语。返回井时间为2015年4月32日22时22分 这是我的简单代码 List<DateTime> xAxises = SetListOfDateTimes(); var culture = Thread.CurrentThread.CurrentCulture; for

我有一个DateTime列表,我想获得DateTime的一些格式,用于显示时分秒。例如,我有2015年12月22日下午4点32分的英语美国文化,如果我使用bg bg,那么我将返回2015年12月16点32分的英语口语。返回井时间为2015年4月32日22时22分

这是我的简单代码

List<DateTime> xAxises = SetListOfDateTimes();
var culture = Thread.CurrentThread.CurrentCulture;

for (int i = 1; i <= xAxises.Count; i++)
{
    string someTime = xAxises.ElementAt(i - 1).ToString("hh:mm:ss tt", Thread.CurrentThread.CurrentCulture = culture);
    string anotherTime = xAxises.ElementAt(i - 1).ToString("ddd, dd MMMM hh:mm:ss tt", Thread.CurrentThread.CurrentCulture = culture);
    string thirdTime = xAxises.ElementAt(i - 1).ToString("dd MMMM yyyy", Thread.CurrentThread.CurrentCulture = culture);
    string fourthTime = xAxises.ElementAt(i - 1).ToString("MMMM yyyy", Thread.CurrentThread.CurrentCulture = culture);
}
List xAxises=SetListOfDateTimes();
var culture=Thread.CurrentThread.CurrentCulture;

对于(inti=1;i好吧,如果你说你想要12小时格式,你就得到了。尝试
HH
而不是
HH
(请参阅)

或者
ToLongTimeString()
。至少还有一些
long
short
版本的
time
和`日期


顺便说一句,
DateTime.Now.ToLongDateString()
为我提供了
Freitag,2016年2月5日
,无需明确指定区域性。

如果你说你想要12小时格式,你就可以了。试着
HH
而不是
HH
(请参阅)

或者
ToLongTimeString()
。至少还有一些
long
short
版本的
time
和`日期


顺便说一句,
DateTime.Now.ToLongDateString()
为我提供了
Freitag,5.Februar 2016
,无需明确指定区域性。

如果您想获得24小时格式的时间字符串,您应该在ToString函数中使用时间格式“HH:mm:ss”。 您可以在此处阅读有关日期和时间格式的更多信息:

如果您想获取24小时格式的时间字符串,应该在ToString函数中使用时间格式“HH:mm:ss”。 您可以在此处阅读有关日期和时间格式的更多信息:

你能更好地解释你所看到的吗?文化只有在你调用
.ToString(…)时才会起作用
,DateTime本身没有区域性。你看了吗?这个问题没有多大意义。DateTime值没有任何格式或区域性。它们是二进制值,而不是字符串。另一方面,格式化或解析时使用的区域性是当前区域性。请发布代码,显示您尝试的内容和体验ted和你得到的。你发布的内容基本上等同于不传递任何文化。默认情况下,任何文化都不会使用24小时。我怀疑问题不在于文化,而在于习俗formatting@PanagiotisKanavos-大胆的断言,我们在德国有24小时制。事实上,我想,12小时制主要用于说英语的cCountries.@Evgenivelikovelikov请确保您的系统的区域性是BG,或者发布更改区域性的代码。如果您的区域性是BG,您将获得
14:53
,例如
DateTime.Now.ToString(“t”)
,或者
5.2.2016Г.14:51:55
DateTime.Now.ToString()
。如果您已将开发机器设置为英语语言环境,则需要键入
DateTime.Now.ToString(“t”,new System.Globalization.CultureInfo(“bg bg”))
您能更好地解释您看到的内容吗?只有在调用
.ToString(…)时,文化才能发挥作用
,DateTime本身没有区域性。你看了吗?这个问题没有多大意义。DateTime值没有任何格式或区域性。它们是二进制值,而不是字符串。另一方面,格式化或解析时使用的区域性是当前区域性。请发布代码,显示您尝试的内容和体验ted和你得到的。你发布的内容基本上等同于不传递任何文化。默认情况下,任何文化都不会使用24小时。我怀疑问题不在于文化,而在于习俗formatting@PanagiotisKanavos-大胆的断言,我们在德国有24小时制。事实上,我想,12小时制主要用于说英语的cCountries.@Evgenivelikovelikov请确保您的系统的区域性是BG,或者发布更改区域性的代码。如果您的区域性是BG,您将获得
14:53
,例如
DateTime.Now.ToString(“t”)
,或者
5.2.2016Г.14:51:55
DateTime.Now.ToString()
。如果您已将开发机器设置为英语语言环境,则需要键入
DateTime.Now.ToString(“t”,new System.Globalization.CultureInfo(“bg”))