绝对路径和相对路径有什么区别
本文关键字:路径 什么 区别 相对 | 更新日期: 2023-09-27 18:32:11
我问是因为我正在为学校做一个项目。是的,这是家庭作业。但是,不过,我试图了解更多。
这是所问的一个例子。
• 当用户单击"保存"按钮时,将所选记录写入 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);
}
//...
有人可以帮我理解这一点吗?
假设您正在为一个地点指路。您可以通过两种方法描述到达该位置:
- 相对于你的立场,
- 相对于地标。
两者都能把你带到同一个位置,但前者并不总是有效("向左走,然后向右走,穿过两个灯然后走另一个右转"不一定在下一个城镇工作,但从你站立的地方工作)。这就是本质的区别。
如果你有C:'Windows'System32
,那就是一条绝对的道路。如果你有Windows'System32
,它只会在你从C:'
开始的时候起作用。如果你从C:'Program Files
开始,你需要一个..'
才能正确到达那里。
但是,无论您在硬盘驱动器上的哪个位置,C:'Windows'System32'
都是访问该文件夹的最终方法。
这实际上是一个简单的区别。相对文件路径将是基于根节点的结构;绝对路径将是基于非模糊位置的结构。这听起来有点不稳定,但实际上很简单。
以下是一些示例:
绝对路径
C:'inetpub'yourapplication'default.aspx
http://www.yourapplication.com/default.aspx
这些路径是绝对的,因为它们是非歧义的。示例 1 显示绝对文件路径,示例 2 显示绝对 URL。
相对路径
./../script/something.js
~/default.aspx
相对路径根据某个已知的前方参考点指定位置。所以在示例 1 中,你知道向上进入一个目录,然后向下进入一个名为 script
的目录,然后进入 javascript 文件。在示例二中,您将指定应用程序根目录中包含的 aspx 页。
特定问题密切相关,您希望将文件写入特定的绝对路径,这意味着它需要是一个不明确的位置。
绝对路径是访问文件系统中的位置所需的整个路径名。
例如:C:'Program Files'Internet Explorer'iexplorer.exe
其中相对路径与某些地标有关,通常是您的主要可执行文件位置或打开程序时设置的"开始位置"。
例如,如果主可执行文件位于 C:'Program Files'
则 iexplorer.exe
的相对路径为 Internet Explorer'iexplorer.exe
。
这通常是在您并不总是知道文件绝对在哪里时完成的,例如它将安装在哪个驱动器号或它将位于哪个文件夹下。
但是,举一个很好的例子,如果你的文件随程序一起提供,并且你知道你的程序安装结构,你可以使用相对路径来查找所有文件,而不管你的程序安装在什么地方,而不是每次都需要将程序安装在完全相同的位置的路径。