问题标签 [path-separator]
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.
r - 在 R 中,使用带有命令行参数的空格在路径中调用外部程序
这里结合了令人沮丧的问题。本质上,我希望 R 使用命令行参数打开一个外部程序。我目前正在尝试在 Windows 机器上实现它,理想情况下它可以跨平台工作。
程序 (chimera.exe) 位于包含空格的目录中:C:\Program Files\Chimera1.15\bin\
命令行选项可以是例如--nogui
标志和脚本名称,因此我将在 shell 中编写(除了空间细节):
如果我进入 Windows cmd.exe 到目录本身并输入chimera.exe --nogui scriptfile
现在在 R 中:
我一直在玩shell()
,shell.exec()
和system()
,但基本上我失败了,因为空格和/或路径分隔符。
大多数时候 system() 只是出于某种原因打印“127”:
后/前斜线使问题进一步复杂化,但不使其工作:
当我将程序安装在没有空格的目录中时,它可以工作。如何转义或传递system()
相关命令中的空格,或者如何调用程序?
c# - 如何通过在 C# 中保留原始路径的目录分隔符来组合路径?
如果我们有/TestDir
一个示例路径,但我们在 Windows 机器上,使用Path.Join
或Path.Combine
withNextDir
将产生/TestDir\NextDir
。
有没有办法让它,如果我将它附加到的路径使用给定的分隔符 - 组合路径使用相同的分隔符?(Unix/Windows),即:
\TestDir
与NextDir
屈服\TestDir\NextDir
。/TestDir
与NextDir
屈服/TestDir/NextDir
。
第一个目录将始终是根路径,这意味着它将始终包含要使用的路径分隔符。唯一的边缘情况是网络路径,因为它们总是以开头\\
但之后它们在 Unix/Windows 中有所不同?如果我在这方面错了,请纠正我。
编辑:有人告诉我这:
是 Classic Mac 的路径分隔符 - 这是真的吗?我没有看到任何将其视为目录分隔符的 .NET API。
python - 为什么 os.path.join 返回带有 2 个斜杠的结果?
为什么它添加 2 '\' 而不是 1 '/'?我正在尝试在我的模型的火车目录中创建一个猫文件夹(使用 Jupyter Notebook),我将在其中放置猫的图像。因为它 os.path.join 返回 2 '\' 这就是我无法通过代码复制/放置图像的原因。任何人都可以帮助我更好地理解 os.path.join ,因为我已经阅读了几篇文章,但这些都没有帮助
这就是它返回的内容
而不是一个'/'它返回2'\'?
java - File.separator 和“/”在可运行 jar 中的工作方式不同
语境
我检测到File.separator
在编译为可运行 jar 的一段代码中使用时的奇怪行为。
对于上下文,我有一个 xml 支持的数据库。然后程序与该数据库进行交互,在开始时解析整个文档,创建对象,修改它们,然后在程序结束时更新 xml 文件。
实际内容和/或文件类型实际上无关紧要,但我已经包含了一个简单的 Hello World txt 作为示例。无论哪种方式,该文件都被数据库读取为InputStream
(唯一的区别是我从 that 解析实际的 xml InputStream
)。
MWE
数据库.java
主.java
你好世界.txt
问题描述
is1
用于/
分隔目录,而is2
使用File.separator
- 通过 IDE (Eclipse) 运行,这两个语句都不会导致异常,并产生以下输出:
- 将代码编译为可运行的 jar(在 Eclipse 中,右键单击项目,左键单击导出,然后按照提示输入可运行的 jar),然后从命令行运行会导致
NullPointerException
抛出is2
. 这是以下输出:
- 请注意,该
System.out.println();
语句并不意味着实际给出HelloWorld.txt
文件的内容,只是为了检查是否InputStream
有效或触发异常
问题
- 直接从Oracle引用:编辑:正如 Erwin Bolwidt 指出的,这是关于 atg 的,不适用于 jdk。很抱歉没有注意到这一点。
为文件属性指定值时,Nucleus 将正斜杠 (/) 转换为您平台的文件分隔符(例如,Windows 使用反斜杠 (\) 作为文件分隔符)。
- 这意味着两者都
File.separator
应该/
提供相同的结果。但是,MWE 显示前者在运行 jar 时不起作用,而后者在 IDE 和 jar 中都可以工作。这是一个错误吗?或者我错过了什么,这是实际的预期行为? - 我一直在使用
File.separator
,根据这篇文章,这是确保未来平台兼容性的最安全方法。无论这是错误还是实际预期的行为,我应该如何解决这个问题?(我可以只使用/
,但我又会失去平台独立性......)
javascript - string path to folders/file object javascript
I have some problems with serialise data.
I have array of objects like this (pseudo-files):
How i can convert without recursion this to tree with folders and files inside like: