当前位置: 首页 > 面试题库 >

如何独立地分割路径平台?

郜俊晤
2023-03-14
问题内容

我正在使用以下代码从给定路径获取包含所有子目录的数组。

String[] subDirs = path.split(File.separator);

我需要数组来检查某些文件夹是否在此路径中的正确位置。直到findBugs抱怨File.separator用作正则表达式之前,这似乎是一个很好的解决方案。似乎将Windows文件分隔符传递给从中构建正则表达式的函数是个坏主意,因为反斜杠是转义字符。

如何不使用File.separator以跨平台方式拆分路径?还是这样的代码好吗?

String[] subDirs = path.split("/");

问题答案:

path.getParentFile()重复使用以获取路径的所有组件。

劝阻的方式是 path.replaceAll("\\", "/").split("/")



 类似资料:
  • 问题内容: 在python中,我有变量和。我想把它们串联起来获得。但是在Windows下,我应该使用和用于POSIX 。 如何使该平台独立? 问题答案: 您要为此使用os.path.join()。 使用此方法而不是使用字符串连接等方法的优势在于,它知道各种特定于OS的问题,例如路径分隔符。例子: 在 Windows 7下 : 在 Linux下 : 所述OS模块包含目录,路径操纵并找出OS特定信息许

  • 问题内容: JavaScript中是否存在类似于Java的东西? 编辑:我正在使用非浏览器JavaScript环境Node.js 问题答案: 我遇到了同样的问题,并且遇到了这个非常古老的问题。经过一段时间的投资,我终于在os文档的最后找到了。 在这种情况下非常重要,否则您将在控制台中仅看到一个空白行(这是有道理的,因为这就是它应该做的)。在正常的用例中,它是不需要的。

  • 在我的mac上使用Maven构建时,在< code>mvn install上,我得到 [警告]使用平台编码(实际上是MacRoman)来复制过滤的资源,即构建取决于平台! 是否可以为给定平台 (Linux) 构建或以其他方式独立于构建平台?

  • 我正在使用Eclipse,在那里,我Java名为“测试”的项目,它也包含文本文件。这个项目中的类应该能够使用BufferedReader读取其中一个文件。这是我目前的代码: 我的文件始终在项目中,但当我将项目移动到另一个路径时,文件路径也会更改,因此我必须使用新路径调整代码。我不想那样,因为这是不切实际的,那我该怎么办呢?如何获得项目的路径?

  • 我总是问这个问题,但我找不到确切的答案: Docker平台独立吗? 我的意思是,当我在Windows中生成映像时,我能在Linux或macOS上运行该映像吗?或者当我在Ubuntu上生成映像时,我可以在Windows上运行该映像吗? 如果是,怎么做?如果不是,那么说docker映像可以在任何地方运行而不用担心任何依赖又有什么意义呢? 请帮我回答这个问题

  • 问题内容: 我有一些通过 Runtime.getRuntime.exec(String) 运行命令的代码,它可以在Windows上运行。当我将代码移至Linux时,它崩溃了,并且解决该问题的唯一方法是切换到 exec(String []) 版本。如果我这样处理,代码在Windows和Linux上是否可以相同,还是应该在Windows上使用exec(String)而在Linux上使用exec(Str