问题标签 [relative-path]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
672 浏览

asp.net - ../ 和 ..// 在文件路径中的区别

我在其中一个 cs 文件中使用相对文件路径来获取保存图像的位置。

使用 ../ 和 ..// 获取路径有什么区别吗?

0 投票
9 回答
245607 浏览

c# - 在 ASP.NET 的外部 C# 类中使用 Server.MapPath

我正在尝试获取 C# 类中某些文件的绝对路径。 Server.MapPath当然,对于 ASPX 及其代码隐藏页面来说效果很好,但这在另一个类文件中不存在。我试过HostingEnvironment.MapPath()了,但这抱怨不允许使用相对虚拟路径。有什么想法吗?

System.Web已经导入。

0 投票
6 回答
113441 浏览

visual-studio-2008 - Visual Studio:相对程序集引用路径

添加对位于解决方案目录中的程序集的引用时,是否有任何方法可以相对添加它,以便在签入和签出存储库时在项目中正确引用它?

0 投票
3 回答
1109 浏览

path - system.io.directorynotfound -> 但它在控制台中工作

我的文件是这样引用的(都是相对的):

当我双击可执行文件时,我得到 system.io.directorynotfound,并且“这个问题需要关闭”。但是从控制台运行它就像一个魅力。这里有什么问题?

我尝试设置 Environment.CurrentDirectory 但无法正常工作。为什么我必须这样做呢?它违背了相对路径的目的,不是吗?

回应……

“应用程序”在当前上下文中不存在,我会继续尝试人们提到的,这不是 windows.form

测试

Path.GetDirectoryName(Reflection.Assembly.GetExecutingAssembly().GetName().CodeBase), myPageTitleXML); 给出错误 URI 格式不受支持,Path.GetFullPath() 也是如此。Server.MapPath 也会导致错误,目前处于离线状态

0 投票
7 回答
24149 浏览

php - PHP:如何解析相对网址

我需要一个给定相对 URL 并且基返回绝对 URL 的函数。我搜索并发现了许多以不同方式执行此操作的功能。

有没有规范的方法?

在这个网站上,我看到了 python 和 c# 的很好的例子,让我们得到一个 PHP 解决方案。

0 投票
3 回答
3844 浏览

relative-path - 如何让 MIDL 在其他包含目录中搜索合格路径

更新:在向微软发起支持电话后仅仅六个月,它就被拒绝了,他们声称这不是一个错误(因为文档没有明确说明所看到的行为不是正确的)。他们拒绝了DCR,因为他们在过去 10 年没有听到任何投诉,这显然不是一个常见的用例。

这是号召性用语,如果您遇到同样的问题,请与 Microsoft 联系支持电话,以便他们了解应该修复它。我知道至少有人遇到了同样的问题,因为我在Chrome 的源代码中找到了这条评论:

#构建 .idl 文件。
#这是一团糟。MIDL 需要从 $OPEN_DIR 运行,因为
#将其包含路径应​​用于“ui/ie/bla.idl”之类的相对路径太愚蠢了
#(它只在当前目录中查找)。所以我们必须跳过箍来修复
#我们的相对包含路径和输出文件。


原始问题:

我有以下文件结构:

  • C:\first\Foo.idl
  • C:\second\Bar.idl

其中Bar.idl包含以下行:

编译时如何让midl编译?Bar.idlC:\second

如果我Foo.idl直接导​​入(不指定first/),那么指定first为额外的包含目录就足够了(midl /I c:\first Bar.idl),它会找到Foo.idl

或者,如果我从C:\( midl second\Bar.idl) 编译,那也可以。

问题是,C:\second使用命令行从内部编译时midl /I C:\ Bar.idl,出现以下编译错误:

c1:致命错误 C1083:无法打开源文件:'first\Foo.idl':没有这样的文件或目录

看起来midl只有在相对于当前目录而不是指定的附加包含目录之一时才愿意搜索相对路径,并且仅将附加包含目录用于非限定文件名,此行为特定于import关键字,当使用include结果符合预期。

我希望能够添加两个不同的附加包含目录,这样如果我的本地计算机上有文件,midl将采用该版本,否则它将从服务器获取文件(因此chdir不能选择根文件夹)。

有没有办法解决这个问题?

0 投票
1 回答
434 浏览

string - 给定服务器相对 URL,找到最后一件事的最快方法(即在最后一个斜杠之后)

我假设:

是吗?

0 投票
9 回答
215054 浏览

python - 使用代码存储库时如何引用资源的相对路径

我们正在使用部署到 Windows 和 Linux 的代码存储库 - 有时位于不同的目录中。项目内部的模块之一应该如何引用项目中的非 Python 资源之一(CSV 文件等)?

如果我们这样做:

或者:

只有当脚本从一个特定目录或目录的子集运行时,它才会起作用。

我想做的是:

是否可以?

0 投票
3 回答
6783 浏览

php - php fopen 相对路径损坏 - 神秘

我知道“必须更改某些内容”,但我的代码似乎无缘无故地在一夜之间坏了。

我的服务器目录结构是这样的:

//
脚本
/审计
/other_things

我在“scripts”文件夹中有一个脚本(假设它称为“/scripts/MyScript.php”),它使用 curl 从网页收集数据,并将它读取的网页的日期副本保存在“audit”文件夹中。

要写入审计文件夹,我使用

$fh = fopen("./audit/2008-09-09-183000.backup.log","w");

然而,停止工作,投掷

[function.fopen]:无法打开流:第 353 行的 /home/web/website.co.uk/audit/2008-09-09-183000.backup.log 中没有这样的文件或目录

然而,我已经通过更改路径来解决这个问题

“../audit/2008 等” 来自“./audit/2008”(这是两个句号/句号,而不是一个)

逻辑表明服务器配置中一定发生了一些变化,但是什么?这是我管理的专用服务器。我怎样才能避免类似的事情再次发生?

我什至已经通过 SVN for MyScript.php 并且所有以前的版本都使用了单个 . 在路径中。

0 投票
2 回答
139 浏览

php - 即使我正在引导,如何保持相对文件路径完整

我正在尝试将预制留言板 Phorum 包含到我的 Zend 项目中。Phorum 是一个相对较大且复杂的 PHP 网络。我的网站已经注册了,所以我试图将两个登录系统合二为一。

我所做的是制作一个包含 Phorum index.php 的控制器。这将让我使用我设置的身份验证系统。我的问题是,由于我正在引导,Phorum 的 index.php 中的所有相对文件路径似乎都试图从我的 Zend 项目的 index.php 开始,这意味着它们似乎都中断了。

有没有解决的办法?我应该包括吗?使成为?更好的东西?

感谢所有帮助。