friso分词器的应用

来源:互联网 发布:数据速率和总比特率 编辑:程序博客网 时间:2024/05/17 23:03

      

Friso分词器的应用 

kezunhai@gmail.com

http://blog.csdn.net/kezunhai

         先前有一篇博文介绍了friso中文分词器,对friso做了简单的介绍。本文将对博主在使用friso过程中的问题做了一个简单的记录。在使用过程中,主要遇到两个问题,一个是friso.ini的路劲不对,另外一个是friso.lex_dir的配置问题,分析了好久才发现问题所在。对于第一个问题主要是调用int friso_init_from_ifile( friso_t, friso_config_t, fstring );函数时会用到,作为fstring类型的参数传入,用于初始化friso_t结构体。在VS开发工程中,可将friso.ini放到工程根目录下,然后直接在程序中以文件名的形式调用即可。而对于friso.lex_dir配置问题,原先总是发现不对,文档说是绝对路径,放入绝对路径会被截断;而传入相对路径,则又提示打开失败。在网上找不到答案的情况下,只有对friso的源码分析,发现在friso_lexicon文件的

void friso_dic_load_from_ifile(
friso_t friso,
friso_config_t config,
fstring _path,
uint_t _limits )
函数中,会自己加后缀,代码如下:
string_buffer_append( sb, _path );
if ( _path[ strlen(_path) - 1 ] != '/' )
string_buffer_append( sb, "/" );
string_buffer_append( sb, __FRISO_LEX_IFILE__ );
          因此,在配置friso.lex_dir路径时,只需配置到dict/GBK/这里即可。如果dict在工程目录的根目录下,则配置为:friso.lex_dir = dict/GBK/。这里需要注意下,如果用GBK的话,friso.ini中的字符集也要配置成gbk,如:friso.charset = 1(0表示UTF-8)

如果其他没有问题,则可以进行测试了,测试结果如下所示:


作者:侯相,出处http://blog.csdn.net/kezunhaihttp://www.feiyuntech.com/:欢迎转载或分享,但请务必声明文章出处。


0 0
原创粉丝点击