是什么绝对和相对路径的区别?(What is the difference between an a

2019-06-23 21:07发布

我问,因为我在学校的一个项目工作。 是的,这是功课。 但是,我想了解一点点,虽然。

这是被问的一个例子。

•当用户点击“保存”按钮,填写所选记录到txtFilePath指定的文件(而不是相对绝对路径)不截断目前里面的值。

这就是我,

private void button2_Click(object sender, EventArgs e)
{
    if (saveFileDialog1.ShowDialog() == DialogResult.OK)
    {
        StreamWriter myWriter = new StreamWriter(saveFileDialog1.FileName);
        myWriter.Write(txtFilePath.Text);
        myWriter.Close();
    }
}

现在,如果我这样做的权利,我不明白。 我知道当我将它保存到我的桌面,我从我的列表框中删除它,当我尝试重新加载它什么也不显示。 这是我有我的形式,

private void button1_Click(object sender, EventArgs e)
{
    if (openFileDialog1.ShowDialog() == DialogResult.OK)
    {
        StreamReader myReader = new StreamReader(openFileDialog1.FileName);
        txtFilePath.Text = openFileDialog1.FileName;
        txtFilePath.Text = myReader.ReadToEnd();
        myReader.Close();
    }
}    

这是负载,

private void Form1_Load(object sender, EventArgs e)
{
    string[] myFiles = Directory.GetFiles("C:\\");
    foreach (string filename in myFiles)
    {
        FileInfo file = new FileInfo(filename);
        employeeList.Items.Add(file.Name);
    }

    //...

是否有人可以帮助我理解这一点?

Answer 1:

说你是到一个景点指路。 有两种方法可以得到描述的位置:

  • 相对于你的立场,
  • 相对于一个具有里程碑意义。

这两个让你在同一位置,但前者并不总是工作(“左转,然后右转,经过两个灯又取权”不一定会从下一城过工作,但是从那里工作你站)。 这是本质的区别。

如果您有C:\Windows\System32 ,这是一个绝对路径。 如果你有Windows\System32 ,只会使工作,只要你从开始 C:\ 。 如果您在启动C:\Program Files ,你需要一个..\正确那里。

但是,不管你是在硬盘上,其中, C:\Windows\System32\是一个明确的方式来获得该文件夹。



Answer 2:

它实际上是一个简单的区分。 相对文件路径将是基于一个根节点的结构; 和绝对路径将是基于非歧义位置的结构。 这听起来有点靠不住的,但实际上它是非常简单的。

这里有些例子:

绝对路径

 C:\inetpub\yourapplication\default.aspx
 http://www.yourapplication.com/default.aspx

因为它们是无歧义,这些路径是绝对的。 实施例1示出了绝对文件路径,和实施例2示出了绝对URL。

相对路径

./../script/something.js
~/default.aspx

相对路径指定基于参考一些已知的超前点的位置。 因此,例如1,你知道一个目录,然后再往成一个目录中称为script ,然后到一个JavaScript文件。 在例如两个,你specifing包含应用程序的根目录中的aspx页面。

因此,锗您的具体问题,你想要写一个文件到一个特定的绝对路径,这意味着它必须是一个非模糊性的位置。



Answer 3:

绝对路径是在文件系统访问的位置所需的完整路径名。
例如: C:\Program Files\Internet Explorer\iexplorer.exe

凡为相对路径是相对于一些标志性建筑,通常是你的主要可执行文件的位置或“启动”的位置设定,当您打开程序。

例如,如果你的主要可执行文件位于C:\Program Files\的相对路径iexplorer.exeInternet Explorer\iexplorer.exe

这通常是当你总是不知道该文件绝对是喜欢哪个驱动器号它将被安装在或文件夹,这将是下。

然而,对于一个很好的例子,如果你的文件来与您的程序,你知道你的程序的安装结构,你可以使用相对路径功能来找到你的所有文件没有你的程序安装,而不是abolute寻路你的程序将需要事安装在完全相同的位置各一次。



文章来源: What is the difference between an absolute and a relative path?