Java读取自定义词典后如何按预期分词

刚接触HanPL,有些使用上的问题希望指点;

在使用代码进行自定义词典加载时,在分词结果中没有很好的呈现预期;
以下是代码部分:

        //分词处理
        DynamicCustomDictionary myDictionary = new 
        DynamicCustomDictionary("data/dictionary/custom/CustomDictionary.txt", "data/dictionary/custom/rootCause.txt");
        StandardTokenizer.SEGMENT.enableCustomDictionary(myDictionary);
        StandardTokenizer.SEGMENT.enableCustomDictionaryForcing(true);
        List<Term> termList = StandardTokenizer.segment(rcBuffer.toString());

加载过程中没有日志并没有说明存在异常,但是分词结果似乎并没有差异,举例说明:
“这是刮板锡多导致的问题”,我将“刮板锡多”加入到我的rootCause.txt词典中,但是分词后还是会将这几个词分出来,是我对概念有不理解的地方吗?还是代码或者读字典存在纰漏?

2 Likes

当我使用到这段代码后:

StandardTokenizer.SEGMENT.customDictionary.insert("刮板锡多");

分词符合预期。不知道为什么txt的字典没有被加载。

我也遇到了一样的问题,现在有解决方案了吗?

把CustomDictionary.txt.bin,这个缓存文件删掉再试下