関数を使用していDirectory.GetCurrentDirectory()
ます。現在のディレクトリパスを取得したら、2つのディレクトリを上に移動し、このデリケートのパスをパス変数に取得する必要があります。
どうすればそれができるのでしょうか?
あなたは2つのディレクトリを意味しますか?上に移動する場合は、Directory.GetParentを使用します。勝手に下に移動することはできません。どこに向かっているのかを知る必要があります。
下に移動するのではなく、上に移動することを意味すると仮定します。
var x = new DirectoryInfo(Directory.GetCurrentDirectory());
var result = x.Parent.Parent;
これで、次のようにそのディレクトリのすべてのデータを取得できます。
var fullName = result.FullName;
Directory.GetCurrentDirectory()
メソッドが実際に別のディレクトリを返すようにしたい場合は、マッチングDirectory.SetCurrentDirectory()
メソッドを使用してアプリケーションの作業ディレクトリを変更する必要があります。
http://msdn.microsoft.com/en-us/library/system.io.directory.setcurrentdirectory.aspx
下に移動する場合は、このDirectory.GetDirectories()
メソッドを使用して現在のパス内のすべてのフォルダーを表示してから、このメソッドを使用してフォルダーのDirectory.SetDirectory()
1つに設定できます。もう一度繰り返して、「2つのディレクトリを停止」します。Sansエラー処理(そして毎回最初のディレクトリが必要だと仮定して):
var directory = Directory.GetCurrentDirectory();
var directories = Directory.GetDirectories(directory);
directory = directories.First();
directories = Directory.GetDirectories(directory);
directory = directories.First();
実際にダウンではなくアップを意味する場合は、他の人が言っているように、このDirectory.GetParent()
メソッドを使用して現在のディレクトリの親を取得します...2回。