我正在更新一个旧的 winforms 应用程序,它使用正则表达式和 System.IO.File.Move 将文件 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 下,我似乎必须先手动创建路径中的每个文件夹。如果我尝试 move 到尚不存在的文件夹,我会收到错误消息。有人知道解决这个问题的方法吗?我宁愿不必创建每个文件夹
注意:新的、更新的应用程序在 WPF 而不是 winforms 上。不确定这是否相关
最佳答案
在 File.Move()
之前,您可以:
new System.IO.FileInfo("c:\\stuff\\a\\file.txt").Directory.Create();
如果“stuff”和“a”文件夹不存在,上面的代码将创建它们。
关于c# - 使用 System.IO.File.Move 时自动创建文件夹,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25201088/