質問です。
以下のような処理を行っておりますが、File.Delete メソッド実行後、File.Move実行時に、
IOException 「既に存在するファイルを作成することはできません。」が発生します。(必ずではありません)
File.Delete 処理は遅延処理なのでしょうか?
ご教授をお願いします。
環境:Windows10 pro (64bit)
言語:C# / .NET Framework4.0
C#
1 Boolean rtn = true; 2 try 3 { 4 //移動先ファイルを存在チェック 5 if (File.Exists("c:\work_dst\test.txt")) 6 { 7 //存在すれば削除する。 8 File.Delete("c:\work_dst\test.txt"); 9 } 10 //ファイル移動する。 11 File.Move("c:\work_src\test.txt", "c:\work_dst\test.txt"); 12 } 13 catch (System.IO.PathTooLongException e) 14 { 15 rtn = false; 16 throw new PathTooLongException("例外[PathTooLongException] Msg=" + e.Message); 17 } 18 catch (System.ArgumentNullException e) 19 { 20 rtn = false; 21 throw new ArgumentNullException("例外[ArgumentNullException] Msg=" + e.Message); 22 } 23 catch (System.ArgumentException e) 24 { 25 rtn = false; 26 throw new ArgumentException("例外[ArgumentException] Msg=" + e.Message); 27 } 28 catch (System.IO.DirectoryNotFoundException e) 29 { 30 rtn = false; 31 throw new DirectoryNotFoundException("例外[DirectoryNotFoundException] Msg=" + e.Message); 32 } 33 catch (System.NotSupportedException e) 34 { 35 rtn = false; 36 throw new NotSupportedException("例外[NotSupportedException] Msg=" + e.Message); 37 } 38 catch (System.UnauthorizedAccessException e) 39 { 40 rtn = false; 41 throw new UnauthorizedAccessException("例外[UnauthorizedAccessException] Msg=" + e.Message); 42 } 43 catch (System.IO.FileNotFoundException e) 44 { 45 rtn = false; 46 throw new FileNotFoundException("例外[FileNotFoundException] Msg=" + e.Message); 47 } 48 catch (System.IO.IOException e) 49 { 50 rtn = false; 51 throw new IOException("例外[IOException] Msg=" + e.Message); 52 } 53 return rtn; 54

回答4件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2019/05/15 23:08
2019/05/15 23:13
2019/05/16 00:22