脱谷为糠,其髓斯存,神之渭也。山骞不崩,唯百为镇,骨之谓也。 一身精神,具乎两目;一身骨相,具乎面部。
posts - 34, comments - 269, trackbacks - 0, articles - 0
  博客园 :: 首页 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理

再次声明,请下载的朋友使用VS2005打开和
安装.NET框架2.0。源码为C++/CLI,不是C#,
请不要再发邮件问我相关问题。谢谢合作。

源码在文末下载


NICTCLAS是大名鼎鼎的中科院计算所语词法分析系统ICTCLAS免费版的.NET包装版本,在原有免费EXE源码的基础上使用C++/CLI封装成NICTCLAS.dll,将原CResult类改写成NICTCLAS managed class,并为适应VC8编译对源码做了少许改动,当然还有N个因为strcpy之类的警告因为实在太多干脆不予理会。如有错漏请不吝指正。

NICTCLAS做了一定程度的简化,接口非常简单,普通分词应用足够了,这里提供C#执行程序调用示例。词库文件下载解压请放在对应NICTCLAS.dll的Data目录下。如果需要在ASP.NET中调用请自行修改代码中词典文件路径。


调用代码示例

public partial class Form1 : Form
    
{
        NICTCLAS nictclas;
        
public Form1()
        
{
            InitializeComponent();
            
try
            
{
                nictclas 
= new NICTCLAS();
            }

            
catch (Exception ex)
            
{
                MessageBox.Show(ex.Message);
            }

        }


        
private void button1_Click(object sender, EventArgs e)
        
{
            
if (radioButton1.Checked)
                nictclas.OperateType 
= eOperateType.OnlySegment;
            
else if (radioButton2.Checked)
                nictclas.OperateType 
= eOperateType.FirstTag;
            
else if (radioButton3.Checked)
                nictclas.OperateType 
= eOperateType.SecondTag;

            
if (radioButton4.Checked)
                nictclas.OutputFormat 
= eOutputFormat.PKU;
            
else if (radioButton5.Checked)
                nictclas.OutputFormat 
= eOutputFormat._973;
            
else if (radioButton6.Checked)
                nictclas.OutputFormat 
= eOutputFormat.XML;

            DateTime start 
= DateTime.Now;
            
string result = "";
               //***************分词处理调用
            nictclas.ParagraphProcessing(textBox1.Text,
ref result);
            DateTime finish 
= DateTime.Now;
            TimeSpan t 
= (TimeSpan)(finish - start);
            textBox3.Text 
= t.TotalMilliseconds.ToString() + "ms";
            textBox2.Text 
= result;
        }

    }



C#调用程序截图

nic.jpg

执行文件下载
(不好意思,下载之前帮我点下增加一点下书的积分吧。
得益网的链接http://www.netyi.net/in.asp?id=edison1024,点击后出现下载地址)

 

Feedback

#1楼    回复  引用  查看    

2006-05-03 09:16 by johnsir      
我下载看看,谢谢你!!

#2楼 [楼主]   回复  引用  查看    

2006-05-03 09:20 by edison1024      
怎么没有人注意我的BLOG头部的与众不同??

#3楼    回复  引用    

2006-05-03 10:50 by try [未注册用户]
不错下载看看。这个东西有java版本的,可没有c#版本的

#4楼    回复  引用    

2006-05-03 11:00 by spermakert [未注册用户]
兰州上河图 你的topAd

#5楼    回复  引用  查看    

2006-05-03 16:37 by 寒冷的冰      
兰州上河图???

#6楼 [楼主]   回复  引用  查看    

2006-05-03 18:17 by edison1024      
清明上河图啊大佬。。。。

#7楼 [楼主]   回复  引用  查看    

2006-05-03 18:18 by edison1024      
◎try
正确的说应该是.net版本。

#8楼    回复  引用    

2006-05-03 19:28 by try [未注册用户]
是vc++ 8.0吧

#9楼    回复  引用    

2006-05-04 02:45 by sherwin [未注册用户]
sherwinzhu@126.com
谢谢

#10楼    回复  引用    

2006-05-04 09:41 by 默石 [未注册用户]
hgaojixiang@gmail.com
3Q

#11楼    回复  引用    

2006-05-04 12:09 by Riancy [未注册用户]
yuesongboy@gmail.com
3Q

#12楼    回复  引用    

2006-05-04 13:57 by liping [未注册用户]
liping_zjsy@163.com
大哥发我一份!
谢谢

#13楼    回复  引用    

2006-05-04 14:11 by yzx [未注册用户]
谢谢了 ,给我发份 。
remoo@126.com

#14楼    回复  引用  查看    

2006-05-04 14:43 by 补丁      
求一份源码~~和词典
谢谢~
corrox@gmail.com

#15楼    回复  引用  查看    

2006-05-04 15:42 by onekey      
你头像上面掂的枪是真的假的啊

#16楼 [楼主]   回复  引用  查看    

2006-05-04 17:51 by edison1024      
@onekey
嘿嘿,我不回答。

#17楼    回复  引用  查看    

2006-05-05 14:12 by 达达      
感谢分享,顶一下!
有空也过去我那逛逛,呵呵

#18楼    回复  引用    

2006-05-05 14:44 by kejian [未注册用户]
很不错 firedlove@163.com

#19楼    回复  引用    

2006-05-05 16:03 by minsky [未注册用户]
给我一份,谢谢!
x3q@163.com

#20楼    回复  引用  查看    

2006-05-05 20:12 by leeichang      
给我一份,谢谢!
leeichang@gmail.com

#21楼    回复  引用  查看    

2006-05-05 21:00 by ekeen      
hiekeen#gmail.com

#22楼    回复  引用    

2006-05-06 10:53 by ericy [未注册用户]
顶部清明上河图的效果很酷!
可否给我源码与词典文件?yzj233@163.com,谢谢。

#23楼    回复  引用    

2006-05-06 13:48 by vikin [未注册用户]
给我一份,谢谢!
vikinno1@163.com

#24楼    回复  引用  查看    

2006-05-06 13:50 by torome      
linlibinmail@gmail.com
谢谢

#25楼    回复  引用    

2006-05-06 20:53 by hhdehh [未注册用户]
hhdehh@gmail.com
帅哥,多谢了

#26楼    回复  引用    

2006-05-06 23:24 by leiguangbin [未注册用户]
jianghanxia@163.com
给我一份,多谢了

#27楼    回复  引用    

2006-05-07 15:44 by lzp [未注册用户]
lzb_hz@163.com
给我一份,多谢了

#28楼    回复  引用    

2006-05-07 16:31 by adonfang [未注册用户]
adonfang@sohu.com
给我一份,谢谢勒。

#29楼    回复  引用    

2006-05-07 21:54 by lzp [未注册用户]
在VS2003不能用,不能加载NICTCLAS.DLL

#30楼    回复  引用  查看    

2006-05-08 10:01 by 墨尔      
Test1.exe不能运行起来。

#31楼    回复  引用    

2006-05-08 12:39 by redapache [未注册用户]
redapache@gmail.com
谢谢

#32楼    回复  引用    

2006-05-08 15:22 by 陈忱 [未注册用户]
给我一个。谢谢
oivoiv@163.com

#33楼    回复  引用  查看    

2006-05-08 17:32 by 代码乱了      
我找了好久啊,兄弟给我一份,谢谢
jrt324@126.com

#34楼    回复  引用    

2006-05-08 17:44 by kkkk [未注册用户]
LivedeviL@163.com,谢谢兄弟了

#35楼    回复  引用    

2006-05-08 17:44 by kkkk [未注册用户]
LivedeviL@163.com

#36楼    回复  引用    

2006-05-09 17:49 by windsandy [未注册用户]
zhangxux@gmail.com 谢谢分享 请给一份源码和词典

#37楼    回复  引用    

2006-05-09 17:49 by 罗格 [未注册用户]
能将源码和词典发一份给我么?谢谢~
我的EMAIL是fasun (-at-) gz168.com

#38楼    回复  引用    

2006-05-10 06:07 by wanshptest [未注册用户]
wanshp@gmail.com 谢谢

#39楼    回复  引用    

2006-05-10 09:11 by Ivan [未注册用户]
redfire0922@yahoo.com.cn 谢谢

#40楼    回复  引用  查看    

2006-05-10 20:11 by Bolik      
Bolik@163.com

#41楼    回复  引用    

2006-05-11 21:38 by Wanglei [未注册用户]
请赠一份,谢谢
qqklzj@163.com

#42楼    回复  引用  查看    

2006-05-12 11:25 by 灵感之源(迎接宝宝)      
一直在研究这个,没有恒心转为C#,希望能发一份,谢谢:)

unruledboy@gmail.com

#43楼    回复  引用    

2006-05-12 21:08 by 3个外孙 [未注册用户]
推荐第三代智能分词系统3GWS(the 3rd Generation Word Segmenter)。据说是ICTCLAS3.0的商业版。参见:
http://www.fajava.cn/products_01.asp

#44楼    回复  引用    

2006-05-13 03:25 by luguo [未注册用户]
居然有做广告的。。。。。。

#45楼    回复  引用    

2006-05-13 12:24 by hcw [未注册用户]
wztchcw@gmail.com
给我一份,谢谢勒。

#46楼    回复  引用    

2006-05-14 20:02 by hs [未注册用户]
hisi@e165.com
请给我一份。
万分感谢!

#47楼    回复  引用    

2006-05-16 19:09 by informationboy [未注册用户]
informationboy@126.com
thanks

#48楼    回复  引用    

2006-05-16 20:39 by 钾肥 [未注册用户]
b0256m@yahoo.com.cn

#49楼    回复  引用    

2006-05-17 16:35 by hxb999 [未注册用户]
hxb999@tom.com
谢谢!

#50楼    回复  引用    

2006-05-18 01:26 by Woo [未注册用户]
er2qing@126.com
thanks a million

#51楼    回复  引用    

2006-05-19 05:23 by 的军 [未注册用户]
xingch50@gmail.com
~~能发我一份吗?
谢谢!

#52楼    回复  引用    

2006-05-20 00:54 by cstudy [未注册用户]
我也正学习和研究这方面的技术,给我一份好吗?
Email: heguangsheng@163.com

谢谢!

#53楼    回复  引用    

2006-05-20 14:30 by 需要NICTCLAS [未注册用户]
我很需要请不吝赐与
kevinmou@126.com

#54楼    回复  引用    

2006-05-20 18:44 by bjhide [未注册用户]
bjhide@126.com

#55楼    回复  引用    

2006-05-22 00:41 by njcgf [未注册用户]
njcgf@163.com
正在研究 需要源码
谢谢

#56楼    回复  引用    

2006-05-22 19:51 by wolfboy [未注册用户]
akbar808@163.com

#57楼    回复  引用    

2006-05-22 22:57 by lilin [未注册用户]
希望可以得到一份,谢谢.

#58楼    回复  引用    

2006-05-25 17:17 by 刘尧 [未注册用户]
能将源码和词典发一份给我么?谢谢~
邮箱:liuyao32@163.com

#59楼    回复  引用    

2006-05-25 17:18 by 刘尧 [未注册用户]
能将源码和词典发一份给我么?谢谢~
liuyao32@163.com

#60楼    回复  引用    

2006-05-25 17:23 by 画画 [未注册用户]
求一份源码~~和词典
非常谢谢~
dxpdragon@163.com

#61楼    回复  引用    

2006-05-25 18:59 by 刘利刚 [未注册用户]
看来版主深谙观人学哦!竟然将曾国藩的观点列在了上面.我的QQ号:117907213;E-mail:lgliu@mtlab.hit.edu.cn。希望能探讨各种问题,包括技术的,历史的(你一定喜欢历史)和观人学。呵呵!最后感谢你提供的资源!!!

#62楼    回复  引用    

2006-05-25 19:02 by 刘利刚 [未注册用户]
呵呵,再打扰一下。帮我发一份你手头上的关于NICTCLAS的资源。
lgliu@mtlab.hit.edu.cn

#63楼    回复  引用    

2006-05-26 15:11 by nells [未注册用户]
coolnil@sohu.com
麻烦给一份,最近有项目可能要涉及相关内容,希望能有合作机会。

#64楼    回复  引用    

2006-05-27 18:44 by 一个未来 [未注册用户]
您好,我正在做这方面的硕士论文,还请给我提供一份源码及字典,谢谢。
982317@163.com

#65楼    回复  引用    

2006-05-27 21:05 by tengyp [未注册用户]
在网上闲逛突然找到了这,不错呀,希望能给我一份源码和字典
tengyp#gmail.com

#66楼 [楼主]   回复  引用  查看    

2006-05-28 13:03 by edison1024      
@刘利刚
一点没错。我真是非常喜欢历史。主要对野史比较感兴趣,哈哈

#67楼    回复  引用    

2006-05-29 08:54 by 积蓄 [未注册用户]
麻烦给我一份源码和字典
AGAG1111@163.COM

#68楼    回复  引用    

2006-05-30 09:51 by 风儿吹过 [未注册用户]
你好,最近我正在研究这方面的东西,如果方便请给我一份源码和字典,
谢谢!
cqsl_xbwu@126.com

#69楼    回复  引用    

2006-05-30 14:53 by ykzj [未注册用户]
谢谢搂主

不知道能不能给我发一份

ykzj@21cn.com

不胜感激

#70楼    回复  引用    

2006-05-30 16:14 by ykzj [未注册用户]
刚才用dll自己写了一个
private void btnGen_Click(object sender, EventArgs e)
{
txtChecked.Text = string.Empty;
NICTCLAS seg = new NICTCLAS();
seg.OperateType = eOperateType.SecondTag;
seg.OutputFormat = eOutputFormat.PKU;
String strResult = string.Empty;
if(seg.ParagraphProcessing(txtOriginal.Text.Trim(), ref strResult))
{
txtChecked.Text = strResult;
}
else
{
MessageBox.Show("分词失败");
}
}

但是执行起来很慢,随便一个10个字符都要分上15秒左右,不知道是我什么地方写错了?

#71楼 [楼主]   回复  引用  查看    

2006-05-30 16:21 by edison1024      
楼上,请参考我给的示例。

你在按钮事件中反复NICTCLAS seg = new NICTCLAS(); ???!!!

请把基本的程设知识学好。。。。汗。。。

#72楼    回复  引用    

2006-05-30 18:56 by ykzj [未注册用户]
lz说的是,还请发一份源代码给我,以及最新的字典
ykzj@21cn.com


不胜感激

#73楼    回复  引用    

2006-05-30 23:03 by so3 [未注册用户]
我正在搞中文分词. 请发一份源代码和最新的字典给我. Thanks a million.
applexooox@yahoo.com

#74楼    回复  引用    

2006-05-31 13:38 by ykzj [未注册用户]
搂主,实在不好意思,我还没有收到源代码,请发到我的另一个邮箱:
xudongliuxjtu@tom.com

谢谢

#75楼    回复  引用    

2006-06-01 13:13 by deland [未注册用户]
能将源码和词典发一份给我么?谢了
daemon.deland#gmail.com

#76楼    回复  引用    

2006-06-14 18:02 by cranbenies [未注册用户]
给我一份,谢谢
dupu_lz@hotmail.com

#77楼    回复  引用    

2006-06-16 22:19 by shootsoft [未注册用户]
能给我一份吗?谢谢shootsoft@yahoo.com.cn

#78楼    回复  引用    

2006-06-22 17:14 by 江锦华 [未注册用户]
给我一份 jiangjinhua.zju@163.com
谢谢

#79楼    回复  引用    

2006-06-25 23:20 by xiaowei [未注册用户]
求一份 研究
ant106@gmail.com
谢谢了 !

#80楼    回复  引用    

2006-06-27 19:01 by mystone [未注册用户]

楼主太棒了,我一直想做把它转成.NET,却没有时间
fandzster@gmail.com
andystone1997@hotmail.com
谢谢啦!

又,我发现它在分"//"的时候会出错,跟了一下没个所以然,后来把"/"加入到断句中去才行,请问楼主知道是为什么吗?

#81楼 [楼主]   回复  引用  查看    

2006-07-03 10:09 by edison1024      
@mystone
我前几天偶尔搜索了一下,发现确实有人作过,在C#中用DllImport实现的,不过那家伙不开源.......-_-.......


"//"的问题我不知道哦

#82楼    回复  引用    

2006-07-07 13:17 by hihi [未注册用户]

大兄弟!给俺也来一分! 中科院的那份C代码有的话,也给我来一份!我咋找不到呢?! xiny120@hotmail.com

#83楼 [楼主]   回复  引用  查看    

2006-07-10 22:15 by edison1024      
楼上大兄弟,不是给出了链接了吗?。。。。

#84楼    回复  引用    

2006-07-14 23:44 by lamfeeling [未注册用户]
lamfeeling@126.com
急需!先谢谢大侠啦!!

#85楼    回复  引用    

2006-07-16 10:19 by esnis [未注册用户]
对以下内容进行分词分产生死循:
9点-10点

删除-就不会有死循环,楼主请测试一下.
多交流:
MSN:esnis@msn.com

#86楼    回复  引用    

2006-07-19 09:00 by 西皮 [未注册用户]
liuzhengan@gmail.com

辛苦了!
先谢谢!!

#87楼    回复  引用    

2006-09-18 13:48 by fengd [未注册用户]
求源码和词典,谢谢

#88楼    回复  引用    

2006-09-18 13:49 by fengd [未注册用户]
刚才一激动,忘留EMAIL了,现在补上:fengd@vip.sina.com

#89楼    回复  引用    

2006-10-25 21:02 by david[匿名] [未注册用户]
thanks

#90楼    回复  引用    

2006-11-11 23:12 by w32508 [未注册用户]
楼主你好!能把源码给我发一份吗?我的总是说路径错误:The data is not available.Please check path of data.
谢谢你!w32508#163.com

#91楼    回复  引用    

2006-11-11 23:16 by w32508 [未注册用户]
楼主你好 :ASP.NET调用怎么改字典路径?谢谢

#92楼    回复  引用  查看    

2006-11-16 03:00 by deerchao      
正在改写C#版的ICTCLAS,完成后免费开源发放。
愿意帮忙的与我联系(deerchao at gmail dot com)。

#93楼    回复  引用    

2006-12-11 17:19 by liu[匿名] [未注册用户]
asp怎么调用阿

#94楼    回复  引用    

2006-12-13 15:51 by 周富贵 [未注册用户]
我也在研究ICTCLAS,我也是用混编的方式,但是分词1600多个文件的时候就会出"尝试读取或写入受保护的内存"的错误.

我以为是我编写的问题,今天用了楼主的.NET包装,给楼主的错误一样,我崩溃呀.

看来是这个程序的错误!

#95楼    回复  引用    

2007-01-31 11:02 by seal_bird21th@sohu.com [未注册用户]
给我也一份,我的E_mail:seal_bird21th@sohu.com

#96楼    回复  引用    

2007-01-31 14:58 by wcy [未注册用户]