同じファイルを作成したいが、同じ構造内のコンテンツは作成したくないということですか。
このようなものが機能する可能性があります:
public static TotallyNotRecursiveAndCreateDirs(string root, string newRoot)
{
DirectoryInfo rootDir = new DirectoryInfo(Path.GetPathRoot(root));
DirectoryInfo[] dirs = rootDir.GetDirectories("*", SearchOption.AllDirectories);
foreach(DirectoryInfo dir in dirs)
{
Directory.CreateDirectory(dir.FullName.Replace(root, newRoot));
FileInfo[] files = dir.GetFiles("*.*", SearchOption.TopDirectoryOnly);
foreach(FileInfo file in files)
{
File.Create(file.FullName.Replace(root, newRoot));
}
}
}
また、rootおよびnewRootパラメーターが有効であることを確認するためにいくつかの例外チェックを実行することもできます(つまり、rootedなど)。
ファイルとディレクトリだけが必要ない場合は、2番目のループを削除してください。