私はメインファイルリストFilelist
を持っています。メインリストにはフルファイルパスが含まれています。copylist
ディレクトリから内容を取り出すことによって追加されたリストがあります。ファイルFilelist
の名前は、一時フォルダのものと一致するので、次のコードを使用しました。文字列リスト内の一致するファイル名を置換する
Filelist = new List<string>();
//Code to Populate File List from openfiledialog
try
{
copylist = Directory.GetFiles(temppath + @"\mydir\");
List<string> tempfiles = new List<string>(Filelist);
int x = 0;
foreach (string file in tempfiles)
{
for (int i = 0; i < copylist .Length; i++)
{
if (Path.GetFileName(file) == Path.GetFileName(copylist [i]))
{
MessageBox.Show("Removed: " + file + " \ninserted:" + copylist [i]);
Filelist.RemoveAt(x);
Filelist.Insert(x,copylist [i]);
}
x++;
}
}
}
catch (Exception)
{
}
私は4つのファイル...私は手動でチェックしたときにマッチしたファイル名(例:tempフォルダ内およびファイル・リスト内の同じファイル名)でテスト【選択平等、すなわちをチェック:Path.GetFileName(file) == Path.GetFileName(copylist [i])
はちょうど2のために満足していますファイルがあり、最終的には1つのファイルのみがFilelist
に置き換えられますが、4つのファイルはすべてtempフォルダにあります。
私は間違っています。アドバイスをお願いします。
@MaciejLosその更新を参照してくださいList.Please文字列。 – techno