在java

时间:2016-12-23 09:17:19

标签: java arabic wordnet jaws-wordnet

我想在java中找到使用阿拉伯语wordnet的同义词,我在here之前看到这个问题,我使用相同的代码源,但它没有用。也许是因为我使用阿拉伯语字网? 我发现了留置权http://javatutorialandprojects.blogspot.com/2012/10/finding-synonyms-and-hyponyms-for-words.html。 我收到一条错误消息:

  

线程“main”中的异常edu.smu.tspell.wordnet.impl.file.RetrievalException:打开索引文件时出错:F:\ TPRI2 \ AWN \ lib \ index.sense(Le chemin d'accèsspécifiéestintrouvable)   这是我使用的代码源

    package lucene.ri;

import edu.smu.tspell.wordnet.NounSynset;
import edu.smu.tspell.wordnet.Synset;
import edu.smu.tspell.wordnet.SynsetType;
import edu.smu.tspell.wordnet.WordNetDatabase;

public class wordnet 
 {

    public static void main(String args[])
    {
        String a[]=new String[2];
        int j=0;
        while(j<2)
        {
            System.setProperty("wordnet.database.dir", "F:\\TPRI2\\AWN\\lib");
            NounSynset nounSynset;
            NounSynset[] hyponyms;
            WordNetDatabase database = WordNetDatabase.getFileInstance();
            Synset[] synsets = database.getSynsets(a[j], SynsetType.NOUN);
             System.out.println("*********************************************");
            for (int i = 0; i < synsets.length; i++)
                {
            nounSynset = (NounSynset)(synsets[i]);
            hyponyms = nounSynset.getHyponyms();

            System.err.println(nounSynset.getWordForms()[0] +": " + nounSynset.getDefinition() + ") has " + hyponyms.length + " hyponyms");

                }
            j++;
        }
         System.out.println("*********************************************");
    }

1 个答案:

答案 0 :(得分:0)

您要显示的源代码

  System.setProperty("wordnet.database.dir", "F:\\TPRI2\\AWN\\lib");

这意味着:您的代码告诉WordNet在哪里寻找东西。因此:您确定该错误消息中提到的索引文件确实存在于该文件中。

正如你现在想的那样:那个文件不存在;好吧,你必须搜索它。

也许你很幸运,line 492有所帮助:检查是否有文件sense.idx;如果是这样,请重命名(或创建副本)作为index.sense