以c#为单位的已用日期时间?

以c#为单位的已用日期时间?,c#,datetime,elapsed,C#,Datetime,Elapsed,所以我尝试在一个只读文本框中显示消息,带有经过的时间和日期,尽管我遇到了一些问题。它显示消息是325天前发送的,而实际上应该是1分钟前。有人能告诉我我做错了什么吗 string[] date; string[] messageArray = File.ReadAllLines(Server.MapPath("~") + "/App_Data/messages.txt"); for (int i = 0; i < messageArray.Length; i++) {

所以我尝试在一个只读文本框中显示消息,带有经过的时间和日期,尽管我遇到了一些问题。它显示消息是325天前发送的,而实际上应该是1分钟前。有人能告诉我我做错了什么吗

string[] date;
string[] messageArray = 
    File.ReadAllLines(Server.MapPath("~") + "/App_Data/messages.txt");

for (int i = 0; i < messageArray.Length; i++)
{
        date = messageArray[i].Split(' ');
        DateTime date1 = DateTime.Now;
        DateTime date2 = Convert.ToDateTime(messageArray[0]);
        TimeSpan timeDifference = date1.Subtract(date2);
        string formattedTime = "Sent " + timeDifference.Days + " days, " + 
         timeDifference.Hours + " hour/s," + 
         " and " + timeDifference.Minutes + " mins ago";

        File.AppendAllText(Server.MapPath("~") + 
              "/App_Data/messages.txt", "\n" + formattedTime + "\n");
        File.AppendAllText(Server.MapPath("~") + 
              "/App_Data/messages.txt", sendMessageTextBox.Text + 
              System.Environment.NewLine);

}
string[]日期;
字符串[]消息数组=
ReadAllLines(Server.MapPath(“~”+”)/App_Data/messages.txt);
for(int i=0;i
运行下面的

        DateTime date2 = DateTime.Now;
        Thread.Sleep(1000);
        DateTime date1 = DateTime.Now;

        TimeSpan timeDifference = date1.Subtract(date2);
        Console.WriteLine(timeDifference.Seconds);
显示
1的输出


打印
messageArray[0]
中的值,查看它是否包含您认为它包含的内容

请显示
messageArray[0]
的值。(您并不真正需要样本的其余部分…)旁注:要格式化值,有
字符串。format
看起来比
+
序列更好。要以秒表示净运行时间,请使用timeDifference.TotalSeconds(总时间以秒表示),而不是timeDifference.seconds(这是总时间的秒部分)。