java调用nlpir_NLPIR(ICTCLAS2013)Java语言调用示例

NLPIR(ICTCLAS2013)Java语言调用示例import kevin.zhang.NLPIR;//库函数申明

import java.util.*;

import java.io.*;

public class TestNLPIR {

public static void main(String[] args) throws Exception

{

try

{

String sInput = "张华平推出的NLPIR分词系统,又名ICTCLAS2013,新增新词识别、关键词提取、微博分词功能。";

//自适应分词

test(sInput);

}

catch (Exception ex)

{

}

}

public static void test(String sInput)

{

try

{

NLPIR testNLPIR = new NLPIR();//申请类

String argu = "../../";

System.out.println("NLPIR_Init");

if (testNLPIR.NLPIR_Init(argu.getBytes("GB2312"),1) == false)//初始化,与C语言的函数功能类似

{

System.out.println("Init Fail!");

return;

}

//NLPIR_ParagraphProcess为:输入字符串,将分词结果输出到字符串,其中第二个参数表示是否进行词性标注

byte nativeBytes[] = testNLPIR.NLPIR_ParagraphProcess(sInput.getBytes("GB2312"), 1);

String nativeStr = new String(nativeBytes, 0, nativeBytes.length, "GB2312");

System.out.println("分词结果为: " + nativeStr);

//输入输出的文件名参数,抱歉,博主对Java不是很熟悉,只能用很粗笨的方式来示范

String argu1 = "E:/NLPIR/test/test.TXT";

String argu2 = "E:/NLPIR/test/test_result1.TXT";

//新词识别:从指定的文件中提取新词

nativeBytes  =testNLPIR.NLPIR_GetFileNewWords(argu1.getBytes("GB2312"),50,true);

//如果是处理内存,可以调用testNLPIR.NLPIR_GetNewWords

nativeStr = new String(nativeBytes, 0, nativeBytes.length, "GB2312");

System.out.println("新词识别结果为: " + nativeStr);

//关键词提取:从指定的文件中提取关键词

nativeBytes  =testNLPIR.NLPIR_GetFileKeyWords(argu1.getBytes("GB2312"),50,true);

//如果是处理内存,可以调用testNLPIR.NLPIR_GetKeyWords

nativeStr = new String(nativeBytes, 0, nativeBytes.length, "GB2312");

System.out.println("关键词识别结果为: " + nativeStr);

//对输入文件进行切分

testNLPIR.NLPIR_FileProcess(argu1.getBytes("GB2312"), argu2.getBytes("GB2312"), 1);

//

//下面开始测试从单个文件中提取新词的功能

//

testNLPIR.NLPIR_NWI_Start();//新词识别开始

testNLPIR.NLPIR_NWI_AddFile(argu1.getBytes("GB2312"));//批量增加输入文件,可以不断循环调用NLPIR_NWI_AddFile或者NLPIR_NWI_AddMem

testNLPIR.NLPIR_NWI_Complete();//新词识别导入文件结束

nativeBytes= testNLPIR.NLPIR_NWI_GetResult(true);//获取本次批量导入文本文件中识别的新词结果

nativeStr = new String(nativeBytes, 0, nativeBytes.length, "GB2312");

System.out.println("新词识别结果 " + nativeStr);//打印输出新词识别结果

testNLPIR.NLPIR_NWI_Result2UserDict();//将上次新词识别的结果作为用户词典导入系统中,导入后的分词结果为自适应分词结果

argu2 = "E:/NLPIR/test/test_result2.TXT";

testNLPIR.NLPIR_FileProcess(argu1.getBytes("GB2312"), argu2.getBytes("GB2312"), 1);

testNLPIR.NLPIR_Exit();

}

catch (Exception ex)

{

}

}

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值