日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

实际程序调用IndexWriter* writer = NULL

發(fā)布時間:2025/6/17 编程问答 36 豆豆
生活随笔 收集整理的這篇文章主要介紹了 实际程序调用IndexWriter* writer = NULL 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

最近由于項目需要,原先用MySQL實現(xiàn)的全文檢索功能已不能滿足需求,于是乎想到了利用開源的全文檢索項目,經(jīng)人介紹看看了Lucene,Lucene使用Java實現(xiàn)的,目前是Apache Jakarta的項目之一,已經(jīng)有一套完整和成熟的庫,可惜本人對Java懂之甚少,便找了個C++ porting的版本,看了看里面的demo,動手體驗了一下,感覺用“短小、強悍”形容再恰當不過了,十幾行代碼便能完成建立索引和進行搜索:

建立索引:

IndexWriter* writer = NULL;

lucene::analysis::standard::StandardAnalyzer an;

// 其中target是要建立的索引名

char* target = "index_name";

writer =?new IndexWriter( target ,&an, true);

Document* doc =?new Document();

doc->add( *Field::Text(_T("author"), _T("abc")) );

writer->addDocument( doc );

writer->optimize();

writer->close();

搜索:

char* index = "index_name";

char* searchfor= "abc";

IndexSearcher s(index);

standard::StandardAnalyzer analyzer;

// searchfor 為需要搜索的字符串

Query* q = QueryParser::parse(searchfor, _T("author"), &analyzer);

// 返回匹配的結(jié)果集

Hits* h = s.search(q);

// 遍歷結(jié)果集

for ( int32_t i=0;i<h->length();i++ ){

//? 毎一條結(jié)果都是一個Document對象,引用也很方便

Document* doc = &h->doc(i);

// 結(jié)果是根據(jù)匹配度排序的:

h->score(i);

}

?

當然,更多的代碼能實現(xiàn)更多的功能,如Filter, Sort等都是Lucene中的功能,對于一般的中小型應用來說,已經(jīng)足夠了。另外建立索引和搜索的速度,目前還沒有大規(guī)模的測試,從已用過的反饋來看都還是不錯的。

CLucene目前的版本還不支持中日韓等Unicode字符集,關(guān)于Lucene如何支持Unicode字符集,正在研究中,后面會與大家分享。

下面是關(guān)于Lucene的一些資源

Lucene項目主頁:

http://jakarta.apache.org/lucene/

Lucene教程:

http://www.darksleep.com/puff/lucene/lucene.html

Lucene的.NET實現(xiàn):dotLucene

http://sourceforge.net/projects/dotlucene/

Lucene作者Cutting的幾篇論文和專利

http://lucene.sourceforge.net/publications.html

CLucene API 文檔:

http://clucene.sourceforge.net/doc/html/

轉(zhuǎn)載于:https://www.cnblogs.com/cy163/archive/2008/06/09/1216424.html

總結(jié)

以上是生活随笔為你收集整理的实际程序调用IndexWriter* writer = NULL的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。