1 つの大きなフォルダーに 800 ~ 1000 個の一意の名前のフォルダーがあります。
一意の名前が付けられた各フォルダーの内部には、/images という名前の別のフォルダーがあります。
そして、各画像フォルダの中に「Rock-Star-Site-Design-{UNIQUEFOLDERNAME}-ca-logo.png」という名前のファイルがあります
私が提供する.pngファイルからすべての.pngファイルを(元の名前を維持しながら)置き換えるコードを書きます。
フォルダー構造とファイル名は同じままにする必要があります。基本的に、同じ(一意の)名前を800〜1000回使用して、古いファイルを新しいファイルで更新しています。
私が試したコードは正常に動作しましたが、1 つの間違いがあります。Image フォルダー内にはたくさんの画像がありますが、フォルダーごとに「Rock-Star-Site-Design-{UNIQUEFOLDERNAME}-ca-logo.png」ファイルのみを更新する必要があります。 .
file.startwith("Rock-Star") を取得できる方法はありますか。したがって、必要な特定のファイルを更新できます。
これが私のコードです:
private List<String> DirSearch(string sDir)
{
List<String> files = new List<String>();
try
{
foreach (string f in Directory.GetFiles(sDir))
{
files.Add(f);
}
foreach (string d in Directory.GetDirectories(sDir))
{
files.AddRange(DirSearch(d));
}
foreach (var file in files)
{
if (!string.IsNullOrWhiteSpace(file))
{
File.Copy(Server.MapPath("ca-logo.jpg"), file,true);
}
}
}
catch (System.Exception excpt)
{
//MessageBox.Show(excpt.Message);
}
return files;
}