Scala obtenir le chemin du fichier dans le dossier des ressources

j'utilise le Stanford CRFClassifier et pour fonctionner, il nécessite un fichier qui est le modèle de classificateur formé. J'ai mis ce fichier dans le répertoire de ressources. Du Javadocs pour le CRFClassifier http://nlp.stanford.edu/nlp/javadoc/javanlp/edu/stanford/nlp/ie/crf/CRFClassifier.html#getClassifier(java.lang.String) le chemin d'accès au fichier doit être une entrée à CRFClassifier.getClassifier () et c'est un java.lang.Objet de type String. Alors ma question Est comment dois-je dire .getClassifier () que le fichier est dans le répertoire des ressources? i.e. Comment puis-je obtenir le chemin d'accès d'un fichier dans le répertoire des ressources?

j'ai essayé simplement

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

Mais cela renvoie une FileNotFoundException.

j'ai aussi essayé

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

qui renvoie un objet BufferedSource, mais je ne sais pas comment obtenir un chemin de fichier à partir de cela.

Toute aide serait grandement apprécié.

7
demandé sur user1893354 2014-05-23 18:24:34

1 réponses

j'ai réussi à obtenir le chemin du fichier en faisant ce qui suit ""

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

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

17
répondu user1893354 2014-05-23 14:39:03