请问这是不是个bug,要怎么解决 ?这个项目一天要发送几万个文件,将近一个月才出现这一例情况。

在项目中碰到一个这样的bug,C#的发送文件的一个项目,功能是给指定的一些服务器ftp发送文件,然后发送成功的就移动到备份文件夹中.我调用的是File.Move(file_path, dest_path)方法来移动文件,file_path是原来所在的路径,dest_path是新路径,都在D盘下面,现在的情况是:项目运行的时候有一个文件xxx.txt,ftp发送成功后,移动到备份文件夹中,结果备份文件夹里有了这个xxx.txt文件,但原来的路径file_path下也还有这个文件。

呼唤远方
浏览 101回答 2
2回答

交互式爱情

引用如果文件被占用而导致没有删除,怎么不会报错呢?异常 条件 IOException 目标文件已经存在。 ArgumentNullException sourceFileName 或 destFileName 为 nullNothingnullptrnull 引用(在 Visual Basic 中为 Nothing)。 ArgumentException sourceFileName 或 destFileName 是零长度字符串、只包含空白或者包含在 GetInvalidPathChars 中定义的无效字符。 UnauthorizedAccessException 调用方没有所要求的权限。 FileNotFoundException 未找到 sourceFileName。 PathTooLongException 指定的路径、文件名或者两者都超出了系统定义的最大长度。例如,在基于 Windows 的平台上,路径必须小于 248 个字符,文件名必须小于 260 个字符。 DirectoryNotFoundException sourceFileName 或 destFileName 中指定的路径无效(例如,它位于未映射的驱动器上)。 NotSupportedException sourceFileName 或 destFileName 的格式无效。 异常中不包括这种情况,文件可以读共享(复制文件是读源文件),不能写共享(删除或者移动源文件,都是要文件锁吧),大概就这意思了

繁花如伊

windows同一分区的移动没错是不用复制再删除; File.Move方法的两个参数,原文件名与目标文件名可以不一样,所以是复制; Move应该是调用系统指令,跟系统上操作的效果是一样的吧
打开App,查看更多内容
随时随地看视频慕课网APP