//方法一:使用算法
private string get_dir_parent1(string dir, int n) //n为几级父目录
{
string[] st = dir.Split('//');
string rst = st[0];
if (st.Length - n >0)
{
for (int i = 1; i < st.Length - n; i++)
{
rst += '//' + st[i];
}
}
else
{
rst += '//';
}
return rst;
}
//方法二:使用目录函数
private string get_dir_parent(string dir, int n) //n为几级父目录
{
string st = System.Environment.CurrentDirectory;
try
{
System.Environment.CurrentDirectory = dir;
for (int i = 1; i <= n; i++)
{
System.Environment.CurrentDirectory = "..";
}
return System.Environment.CurrentDirectory;
}
finally
{
System.Environment.CurrentDirectory = st;//恢复最初
}
}
//测试 闫磊 Email:Landgis@126.com,yanleigis@21cn.com 2006.10.11
private void button2_Click(object sender, EventArgs e)
{
string Dir = get_dir_parent(Application.StartupPath, 7);
MessageBox.Show(Dir);
Dir = get_dir_parent1(Application.StartupPath, 7);
MessageBox.Show(Dir);
}