Aug-05-2023 100650 LOG_1DAT Aug-05-2023 102812 LOG_2DAT Aug-07-2023 064020 LOG_3DAT这三行数据第一列是日期第二列是时间第三列是文件名怎么用C#判断哪个是最新的文件
可以使用DateTime.ParseExact方法将日期和时间字符串转换为DateTime对象,然后比较这些DateTime对象的大小以确定最新的文件。
以下是一个示例代码:
using System;
using System.Collections.Generic;
public class Program
{
public static void Main(string[] args)
{
List<string> fileData = new List<string>()
{
"Aug-05-2023 10:06:50 LOG_1.DAT",
"Aug-05-2023 10:28:12 LOG_2.DAT",
"Aug-07-2023 06:40:20 LOG_3.DAT"
};
DateTime latestDateTime = DateTime.MinValue;
string latestFile = string.Empty;
foreach (string data in fileData)
{
string[] parts = data.Split(' ');
string dateTimeString = $"{parts[0]} {parts[1]}";
string fileName = parts[2];
DateTime dateTime = DateTime.ParseExact(dateTimeString, "MMM-dd-yyyy HH:mm:ss", null);
if (dateTime > latestDateTime)
{
latestDateTime = dateTime;
latestFile = fileName;
}
}
Console.WriteLine($"最新的文件是:{latestFile}");
}
}
在这个示例中,我们遍历了fileData列表中的每一行数据。首先,我们使用Split方法将每行数据拆分成日期、时间和文件名三部分。然后,我们使用DateTime.ParseExact方法将日期和时间字符串转换为DateTime对象。如果当前的DateTime对象比之前记录的最新日期时间对象更大,我们就更新最新日期时间对象和最新文件名。
最后,我们输出最新的文件名。
请注意,这个示例假设输入的日期和时间字符串的格式是固定的,并且都是有效的。如果输入的数据可能有不同的格式或无效的日期时间字符串,你需要进行适当的错误处理
原文地址: https://www.cveoy.top/t/topic/ivVc 著作权归作者所有。请勿转载和采集!