string - 在程序中检查输入字符串是否为路径的最佳方法是什么?

标签 string scala hadoop

我正在写一个解析器。在我的系统中,我有一个路径(绝对有效)或一个名称。我需要知道当前的字符串条目是否是路径而不是名称。 我想使用 Hadoop.fs.Path 并向此类发送一个字符串,我知道它将从该字符串构造一个路径,但如果该字符串不是路径怎么办?我是否需要编写自己的函数来解析路径,或者是否有任何可用的功能可供我使用?

谢谢

最佳答案

几乎任何长度合理的字符串都可以是一条路径。例如,我可能在当前目录中有一个名为 Richard 的目录,此时 Richard 将是一个有效路径。此外,用户可能会认为有这样一条路径(但实际上是 Rich),但实际上它不见了。因此,如果您问“我如何判断任意字符串是否是路径”,答案是您不能

因此在您的解析器中,您将不得不以其他方式处理它。路径必须存在吗?如果是,只需创建文件对象并询问它是否存在(如果您有路径对象并且正在使用 Hadoop,您可以使用 fs.FileSystem.exists 来做到这一点)。或者,您需要确定名称的标准(例如,它存在于数据库中或映射到某处)并首先挑选出那些,假设其他一切都是路径。

关于string - 在程序中检查输入字符串是否为路径的最佳方法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29267525/

相关文章:

c - 使用 sscanf 读取字符串的剩余部分

scala - 减少使用 shapeless HList 时的编译时间

linux - .bashrc 文件显示错误

scala - 如何用我自己的通用 `map`(正确的方法)丰富 Scala 集合?

vector - java.lang.OutOfMemoryError : Java heap space error while running seq2sparse in mahout 错误

hadoop - java.lang.UnsatisfiedLinkError : org. apache.hadoop.io.nativeio.NativeIO 启动DFS失败

string - 如何在 Dart 中对字符串列表进行排序?

c - 断言在字符串数组比较中失败

.net - 为什么 regex.IsMatch(str) 比 str.EndsWith(不变文化)快?

scala - 如何在 Ga特林 中从 csv 文件注入(inject)数据?