我有以下问题:我有一个字符串变量,它必须存储一个文件路径。在 foreach 循环中,我遍历某个目录中的所有文件,并寻找最旧的文件,该文件保存在该字符串变量中。循环完成后,我尝试删除该文件,但出现错误:使用未分配的局部变量。
这是代码:
DateTime min = DateTime.Now;
string[] fileNames = Directory.GetFiles(somePath);
string fileDelete;
int countFiles = fileNames.Length;
if (countfiles > 5)
{
foreach (string someFile in fileNames)
{
FileInfo infoFile = new FileInfo(someFile);
if (infoFile.CreationTime <= min)
{
min = infoFile.CreationTime;
fileDelete = someFile;
}
}
File.Delete(fileDelete);
}
它说 File.Delete(fileDelete) 中的字符串 fileDelete 没有价值,但有趣的是,当我在开头给它一个值时,就像这样:
string fileDelete = "blabla";
它工作得很好。这只是方法的一个片段,以防您想知道