【问题标题】:Scala get file path of file in resources folderScala获取资源文件夹中文件的文件路径
【发布时间】:2014-07-12 23:07:05
【问题描述】:

我使用的是 Stanford CRFClassifier,为了运行,它需要一个文件,该文件是经过训练的分类器模型。我已将此文件放在资源目录中。来自 CRFClassifier 的 Javadocs http://nlp.stanford.edu/nlp/javadoc/javanlp/edu/stanford/nlp/ie/crf/CRFClassifier.html#getClassifier(java.lang.String) 文件的路径必须是 CRFClassifier.getClassifier() 的输入,并且它是一个 java.lang.String 对象。所以我的问题是如何告诉 .getClassifier() 该文件位于资源目​​录中?即如何获取资源目录中文件的文件路径?

我试过了

val classifier = CRFClassifier.getClassifier("./src/main/resources/my_model.ser.gz")

但这会返回 FileNotFoundException。

我也试过了

Source.fromURL(getClass.getResource("/my_model.ser.gz"))

它返回一个 BufferedSource 对象,但我不知道如何从中获取文件路径。

任何帮助将不胜感激。

【问题讨论】:

  • 这个CRFClassifier.getClassifier(getClass.getResource("/split0-ner-model.ser.gz").getPath) 对你有用吗?
  • 是的,这就是我最终所做的。谢谢。

标签: scala io filepath stanford-nlp


【解决方案1】:

我设法通过执行以下操作来获取文件路径

val url=getClass.getResource("/my_model.ser.gz")

val classifier = CRFClassifier.getClassifier(url.getPath())

【讨论】:

    猜你喜欢
    • 2010-12-02
    • 1970-01-01
    • 1970-01-01
    • 2021-12-21
    • 1970-01-01
    • 2016-12-25
    • 2020-10-31
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多