C# 将UTC的精确日期解析为指定的cltureinfo

C# 将UTC的精确日期解析为指定的cltureinfo,c#,datetime,globalization,cultureinfo,C#,Datetime,Globalization,Cultureinfo,我试图将UTC格式的日期“yyyy-MM-ddTHH:mmZ”转换为localdatetime,但在通过fr或其他格式更改cultureInfo时,请始终保持相同的localdatetime 例如,我这样做: IFormatProvider culture = new System.Globalization.CultureInfo("en-US",null); DateTime tempDte= DateTime.MinValue; string test = ""2014-04-09T14:

我试图将UTC格式的日期“yyyy-MM-ddTHH:mmZ”转换为localdatetime,但在通过fr或其他格式更改cultureInfo时,请始终保持相同的localdatetime

例如,我这样做:

IFormatProvider culture = new System.Globalization.CultureInfo("en-US",null);
DateTime tempDte= DateTime.MinValue;
string test = ""2014-04-09T14:29Z";
DateTime.TryParseExact(test , "yyyy-MM-ddTHH:mmZ", culture,    DateTimeStyles.AssumeLocal, out tempDte)

Console.WriteLine("col = " + s + " &init " + test  + " &ToLocalTime = " + tempDte.ToLocalTime() + " &ToUniversalTime = " + tempDte.ToUniversalTime());
你能给我解释一下如何根据文化来安排时间吗


谢谢

日期时间字符串中没有秒部分

试试这个:

DateTime.TryParseExact(test , "yyyy-MM-ddTHH:mmZ", culture,    
                               DateTimeStyles.AssumeLocal, out validDate);

注意:请确保您正在打印转换后的DateTime变量
validDate

区域性无关-请确保使用合理的名称,并确保在同一范围内没有两个类似的变量。我已更正了代码,但通过更改us或FRP,仍然具有相同的localdatetime。请显示一个你实际期望的例子?我怀疑你想要的是法国时区,而不是FR-FR文化。如果你在澳大利亚,问一些说法语的人“现在几点了”,这不会让午夜变成下午……我有考试日期,我想显示法国、美国或其他地区的时间。请编辑你的问题,解释一下-
CultureInfo
与时区无关,您正在寻找[TimeZoneInfo](类..现在很清楚这个问题的重复内容。我已经更改了,但仍然不起作用,它将是tempDte而不是validDate。如果我使用fr fr或en US,我应该有两个不同的本地时间吗?