Scala get file path of file in resources folder

我怕爱的太早我们不能终老 提交于 2019-12-06 22:51:16

问题


I am using the Stanford CRFClassifier and in order to run, it requires a file that is the trained classifier model. I have put this file in the resources directory. From the Javadocs for the CRFClassifier http://nlp.stanford.edu/nlp/javadoc/javanlp/edu/stanford/nlp/ie/crf/CRFClassifier.html#getClassifier(java.lang.String) the path to the file must be an input to CRFClassifier.getClassifier() and it is a java.lang.String object. So my question is how do I tell .getClassifier() that the file is in the resources directory? i.e. how do I get the file path of a file in the resources directory?

I have tried simply

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

But this returns a FileNotFoundException.

I have also tried

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

which returns a BufferedSource object, but I do not know how to get a file path from this.

Any help would be greatly appreciated.


回答1:


I managed to be able to get the file path by doing the following

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

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



来源:https://stackoverflow.com/questions/23831768/scala-get-file-path-of-file-in-resources-folder

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!