我正在更新旧的winforms应用程序,该应用程序使用regex和System.IO.File.Move将文件移动到新位置
在Windows 7下,旧应用程序运行良好。如果文件夹不存在,File.Move会创建它
System.IO.File.Move("c:\stuff\a.txt","c:\stuff\a\file.txt");
System.IO.File.Move("c:\stuff\b.txt","c:\stuff\b\file.txt");
System.IO.File.Move("c:\stuff\c.txt","c:\stuff\c\file.txt");
但是,在Windows 8下,似乎我必须先在路径中手动创建每个文件夹。如果我尝试移动到一个尚不存在的文件夹,我会收到错误。有人知道解决这个问题吗?我宁愿不必创建每个文件夹
注意:新的,更新的应用程序是在WPF而不是winforms。不确定是否相关
答案 0 :(得分:22)
在File.Move()
之前,你可以做到:
new System.IO.FileInfo("c:\\stuff\\a\\file.txt").Directory.Create();
以上将创建"东西"和" a"文件夹,如果他们不存在。