3

所以我试图在只读文本框中显示消息,以及经过的时间和日期,尽管我遇到了一些问题。它显示消息是在 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);

}
4

1 回答 1

7

运行以下

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

        TimeSpan timeDifference = date1.Subtract(date2);
        Console.WriteLine(timeDifference.Seconds);

显示输出1

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

于 2013-06-03T04:11:21.440 回答