首先把 ictclasj解压缩,然后

1.把 Data文件夹整个拷贝到 Eclipse项目的文件夹下,

2.而 bin目录下的 org文件夹整个拷贝到你 Eclipse项目的 bin目录下,(将class文件存进去)

3.把src目录下的org文件夹整个拷贝到 Eclipse项目 的src目录下。

4.把目录中commons-lang-2.4.jar 加到项目中(右键新建folder--设置名字为LIB--直接复制jar到此文件夹--点击此jar-右键-buidpath-add 点击即可)

3.测试分词结果

Java代码

import org.ictclas4j.bean.SegResult;

import org.ictclas4j.segment.SegTag;

public class TextSegmentation {

public static void main(String[] args) {

String fileContent = "中国科学院计算技术研究所在多年研究基础上," +   "耗时一年研制出了ICTCLAS汉语词法分析系统";

SegTag segTag = new SegTag(1);// 分词路径的数目

SegResult segResult = segTag.split(fileContent.trim());

String classifyContent = segResult.getFinalResult();

System.out.println("分词结果\n"+classifyContent);

}

}

就是这样,我们可以得到输出的结果,并且带有词性的标注。

Java代码

分词结果

中国科学院/n 计算/n 技术/n 研究所/n 在/c 多年/m 研究/n 基础/a 上/f ,/w 耗时/v 一/d 年/a 研制/v 出/q 了/u ICTCLAS/nx 汉语/n 词法/n 分析/v 系统/a

分词结果

中国科学院/n 计算/n 技术/n 研究所/n 在/c 多年/m 研究/n 基础/a 上/f ,/w 耗时/v 一/d 年/a 研制/v 出/q 了/u ICTCLAS/nx 汉语/n 词法/n 分析/v 系统/a

三、关于可能出现的错误

1.越界错误

在Dictionary.java里面的getMaxMatch()函数里要注意加上对wis的判断语句

if(wis != null)

否则有时会报出越界错误

2.关于第三点越界的问题之前的博主没有注意到

在Dictionary.Java的findInModifyTable方法中有这么一段:

if (mts != null && mts.size() > index) {

            ArrayList<WordItem> wis = mts.get(index).getWords();
..... }

此处需要对index进行负数的判断,应改为

if (mts != null && mts.size() > index) {

            if(index < 0)
return result; ArrayList<WordItem> wis = mts.get(index).getWords();
........ }

在对大文件进行中文分词时,出现了以下的错误信息

java.lang.ArrayIndexOutOfBoundsException: -39
at java.util.ArrayList.get(ArrayList.java:324)
at org.ictclas4j.bean.Dictionary.findInOriginalTable(Dictionary.java:
422)
at org.ictclas4j.bean.Dictionary.getFreq(Dictionary.java:632)
at org.ictclas4j.segment.GraphGenerate.biGenerate(GraphGenerate.java:
170)
at org.ictclas4j.segment.Segment.split(Segment.java:81)
at com.ictclas4j.test.MyTest.main(MyTest.java:19)

经过上网查询资料以及阅读相关源代码,找到可能的出错原因:

分词过程中出现了未能识别的字,如繁体字等

改错方法:在Dictionary.java文件中找到findInOriginalTable()方法,将其中的

  1. if (res != null && wts != null) {

修改为

  if (res != null && wts != null &&index>=0 &&index<wts.size()) {  

即可。

ictclas4j 分词工具包 安装流程的更多相关文章

  1. Gulp安装流程、使用方法及cmd常用命令导览

    Gulp安装流程.使用方法及CMD常用命令导览 来自前端小白的gulp及周边知识学习总结 一.名词介绍: Npm--node包管理工具 一开始我不理解,包管理工具是什么鬼.后来用到的gulp也好,gu ...

  2. 北大开源全新中文分词工具包:准确率远超THULAC、结巴分词

    最近,北大开源了一个中文分词工具包,它在多个分词数据集上都有非常高的分词准确率.其中广泛使用的结巴分词误差率高达 18.55% 和 20.42,而北大的 pkuseg 只有 3.25% 与 4.32% ...

  3. pkuseg:一个多领域中文分词工具包

    pkuseg简单易用,支持细分领域分词,有效提升了分词准确度. 目录 主要亮点 编译和安装 各类分词工具包的性能对比 使用方式 相关论文 作者 常见问题及解答 主要亮点 pkuseg具有如下几个特点: ...

  4. iOS 最新版 CocoaPods 的安装流程

    iOS 最新版 CocoaPods 的安装流程1.移除现有Ruby默认源$gem sources --remove https://rubygems.org/2.使用新的源$gem sources - ...

  5. 最新版 CocoaPods 的安装流程

                                       iOS 最新版 CocoaPods 的安装流程     1.移除现有Ruby默认源 $gem sources --remove h ...

  6. CocoaPods安装流程

    iOS 最新版 CocoaPods 的安装流程       1.移除现有Ruby默认源 $gem sources --remove https://rubygems.org/   2.使用新的源 $g ...

  7. CentOS 7 64位的安装流程

    若出现以下不支持虚拟机的问题: 表示虚拟机检测到CPU支不支持虚拟化,要去BIOS里设置虚拟化技术设置为enabled:重启电脑-按"F1或Fn+F1"-进入BIOS主界面-移至S ...

  8. Yii2框架与MongoDB拓展、Redis拓展的安装流程

    @author 周煦辰 2016-03-21 这段时间新上了一个项目,使用的是Yii2框架.这里记录一下Yii2框架.Yii2-Mongo拓展.Yii2-Redis拓展等的安装流程.因为使用的系统是W ...

  9. Canopy v. 1.5.5 ubuntu安装流程

    官网的下载超级慢,还总是断,一断就失败了 我花费了7个小时终于在尝试了5次以后下载成功了,现在将网盘链接分享出来 https://yunpan.cn/cxt28gM26mxQU  访问密码 301d ...

随机推荐

  1. 武汉Uber优步司机奖励政策(12月14日到12月20日)

    滴快车单单2.5倍,注册地址:http://www.udache.com/ 如何注册Uber司机(全国版最新最详细注册流程)/月入2万/不用抢单:http://www.cnblogs.com/mfry ...

  2. Docker介绍及安装

    Docker介绍 Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化.容器是完全使用沙箱机制, ...

  3. linux下实现ssh无密码登录访问

    在192.168.9.51机器上 1)运行:#ssh-keygen -t rsa 2)然后拍两下回车(均选择默认) 3)运行: #ssh-copy-id -i /root/.ssh/id_rsa.pu ...

  4. 抓取Oracle数据快照

    进入到oracle安装目录下的admin(找到这个目录)开启cmd键入sqlplus system/mima@实例名>@awrrpt.sql Would you like an HTML rep ...

  5. ACID、数据库隔离级别

    ACID: A(Atomicity):原子性,要么全部执行,要么都不执行 C(consistency):一致性: 特点: 1.一个操作除法级联,这些必须成功,否则全部失败(原子性) 2.所有节点同步更 ...

  6. 【Mybatis】 逆向生成工程

    前言: 必需学会Maven and SQL基础知识 简介: 通过 Maven, Mybatis 逆向生成 Pojo, Mapper, Example(本章屏蔽了) 工具: JDK8 apache-ma ...

  7. Python字典操作大全

    //2018.11.6 Python字典操作 1.对于python编程里面字典的定义有以下几种方法: >>> a = dict(one=1, two=2, three=3) > ...

  8. ubuntu 执行Python脚本出现: /usr/bin/env: ‘python\r’: No such file or directory

    原因: #!/usr/bin/env python 在ubuntu会变成 #!/usr/bin/env python\r 而\r 会被shell 当成参数 所以出现:  /usr/bin/env: ‘ ...

  9. 【form】 表单组件说明

    form表单组件 1)将form组件内的用户输入的<switch/> <input/> <checkbox/> <slider/> <radio/ ...

  10. gdb超级基础教程

    GDB超级基础教程 为什么叫超级基础呢,因为我被坑了一把.... 编译选项带 -g 就可以在可执行程序中加入调试信息,然后就可以使用gdb去查看了. 使用help命令就可以看到: (gdb) help ...