私はC#の初心者です。私のプロジェクトでは、ユーザーは OpenFileDialog ボックスから画像ファイルを選択します。彼/彼女が画像ファイルを選択すると、次のようなバック コードが実行されます。
File.Copy(SourceFilePath, DestinationFilePath);
上記のコードの問題は、ユーザーが既存の画像ファイルを追加しようとするたびにエラーがスローされることです。このエラーを回避するために、コードを次のように変更しました。
if (File.Exists(DestinationFilePath))
{
intCount++;
File.Copy(SourceFilePath,TemporaryFilePath);
File.Copy(TemporaryFilePath, DestinationFilePath + intCount.ToString());
File.Delete(TemporaryFilePath);
}
else
{
File.Copy(SourceFilePath, DestinationFilePath);
}
上記のコードの問題は、ファイル拡張子を変更するintCount
ように、画像ファイルの最後に値を追加していることです。image.gif1
画像ファイルのパスにカウンターを追加するには?
そして、ここで既存のファイルをチェックするために使用しているアプローチは、正しい方法ではないと思います。
更新:回答:-
int intCount = 1;
while (File.Exists(Application.StartupPath + DirectoryPath + strPath))
{
strPath = Path.GetFileNameWithoutExtension(strPath) + intLarge.ToString() + Path.GetExtension(strPath);
intCount++;
}
intCount = 1;