我想把一个路径分成它的组件,并希望它能在所有平台上运行。
我知道这个题目看起来像是一个缺乏事先研究的问题,所以我记录了我在下面做的谷歌查询的结果。
我以为这很容易
strsplit("C:\\Path to\\file", .Platform$file.sep)
?.Platform
说:
和
在Windows上。。。
strsplit("C:\\Path to\\file", "[\\/]")
但我已经想到了一个不起作用的角落:UNC路径(
\\server\folder\file
)也许其他平台上还有更多呢?
有
this answer
dirname
basename
直到结果不再改变。这样可以更好地处理UNC路径,但并不理想(它添加了一个
"."
作为最后一个元素)。这似乎是迄今为止我遇到的最有希望的候选人。
-
有什么用
.Platform$file.sep
-
附录:搜索查询:
-
java—逐行拆分文本文件,平台独立
-
爪哇-文件.分隔符在小路上横冲直撞
-
r-文件.分隔符. 保存导入的文件路径文件.选择()在R
-
r-保存导入的文件路径文件.选择()在R
-
javascript-javascript平台无关的行分隔符
-
-
vb.net版-有效文件名检查。最好的方法是什么?
-
-
c#-如何将文本文件拆分为三个空行?
-