因此,如果Kind未指定,则DateTime为UTC,但在同一页上(给出的示例):
class Sample
{
public static void Main()
{
DateTime saveNow = DateTime.Now;
myDt = DateTime.SpecifyKind(saveNow, DateTimeKind.Unspecified);
Display("Unspecified: .....", myDt);
}
public static string datePatt = @"M/d/yyyy hh:mm:ss tt";
public static void Display(string title, DateTime inputDt)
{
DateTime dispDt = inputDt;
string dtString;
dtString = dispDt.ToString(datePatt);
Console.WriteLine("{0} {1}, Kind = {2}", title, dtString, dispDt.Kind);
dispDt = inputDt.ToLocalTime();
dtString = dispDt.ToString(datePatt);
Console.WriteLine(" ToLocalTime: {0}, Kind = {1}", dtString, dispDt.Kind);
dispDt = inputDt.ToUniversalTime();
dtString = dispDt.ToString(datePatt);
Console.WriteLine(" ToUniversalTime: {0}, Kind = {1}", dtString, dispDt.Kind);
Console.WriteLine();
}
}
}
输出结果为:
未指定: ..... 2005/5/6 下午2:34:42,时区 = 未指定
ToLocalTime: 2005/5/6 上午7:34:42,时区 = 本地时间
ToUniversalTime: 2005/5/6 下午9:34:42,时区 = 协调世界时
因此,我对此的问题是,如果未指定为协调世界时,则为什么从协调世界时转换为协调世界时会更改日期时间对象的值?