java檢索,java檢索文件

本文目錄一覽:

java如何實現搜索功能。比如,輸入txt就能搜索出這個文件夾內所有txt格式的文件。請給完整代碼。

import java.io.*;

public class FileDemo{

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

        //第一個參數是文件路徑,第二個參數是要搜索的文件擴展名

getFile(“D:\\JavaDemo”,”.txt”);

}

private static void getFile(String pathName, final String endsWith)throws Exception{

File file = new File(pathName);

if(!file.exists())

throw new RuntimeException(“文件不存在,你檢索個P呀。”);

file.listFiles(new FileFilter(){

public boolean accept(File file){

if(file.getName().endsWith(endsWith)){

System.out.println(file.getName());

return true;

}else

return false;

}

});

}

}

java 目錄樹如何檢索子級返回

Java中使用遞歸演算法實現查找樹形結構中所有父級和子級節點,用遞歸加一個全局變數標記是否已經找到,然後返回。

截取後面的一段例子:

if (list[i].ID.Equals(id) || found)

found = true;

return;

拓展資料

遞歸查詢子級節點

1.一個節點可能有多個子級節點,每個自己節點可能還有更多的子級節點。

2.所以遞歸時的參數用一個list來接受,首先遍歷參數list,分別查詢pid為參數id的對象。

3.每一個參數id所查詢返回的數據是一個對象的list。

4.遍歷list獲取符合條件的對象的id值,一份存到temp中用作遞歸的參數,並存到全局變數中用來獲取所有符合條件的id。

java如何實現拼音首字母檢索漢字

使用pinyin4j或者jpinyin的,先將漢字轉換為拼音,然後記錄拼音的首字母,具體的檢索過程可以用循環過濾,也可以用前綴樹 比如tire樹

參考鏈接:

網頁鏈接 java實現漢字轉拼音

網頁鏈接 tire樹

java中如何實現全文檢索

java的開源的免費全文檢索工具Lucene

Lucene不是一個完整的全文索引應用,而是是一個用Java寫的全文索引引擎工具包,它可以方便的嵌入到各種應用中實現針對應用的全文索引/檢索功能。

Lucene的作者:Lucene的貢獻者Doug Cutting是一位資深全文索引/檢索專家,曾經是V-Twin搜索引擎(Apple的Copland操作系統的成就之一)的主要開發者,後在Excite擔任高級系統架構設計師,目前從事於一些INTERNET底層架構的研究。他貢獻出的Lucene的目標是為各種中小型應用程序加入全文檢索功能。

Lucene的發展歷程:早先發布在作者自己的,後來發布在SourceForge,2001年年底成為APACHE基金會jakarta的一個子項目:

已經有很多Java項目都使用了Lucene作為其後台的全文索引引擎,比較著名的有:

Jive:WEB論壇系統;

Eyebrows:郵件列表HTML歸檔/瀏覽/查詢系統,本文的主要參考文檔「TheLucene search engine: Powerful, flexible, and free」作者就是EyeBrows系統的主要開發者之一,而EyeBrows已經成為目前APACHE項目的主要郵件列表歸檔系統。

Cocoon:基於XML的web發布框架,全文檢索部分使用了Lucene

Eclipse:基於Java的開放開發平台,幫助部分的全文索引使用了Lucene

對於中文用戶來說,最關心的問題是其是否支持中文的全文檢索。但通過後面對於Lucene的結構的介紹,你會了解到由於Lucene良好架構設計,對中文的支持只需對其語言詞法分析介面進行擴展就能實現對中文檢索的支持。

如何用java的lucene對資料庫進行全文檢索

lucene是一個公用的全文索引組件,它的目標是把各種各樣格式的數據轉化成lucene特有的索引文件格式,這樣才能通過lucene的高速檢索機制進行全文檢索。

你的數據來源可以是關係資料庫,可以是word、execl、txt文檔,可以是html網頁,對於這些數據源,你必須將它們內部的數據讀取出來,並封裝成lucene的document實例,之後讓lucene幫你構建索引。

舉個例子:你的有一個用戶資料庫,裡面存儲了幾十萬的用戶信息,你現在要對這個資料庫進行全文索引,那麼你要做的事情是:

1.寫一段傳統的JDBC程序,講每條的用戶信息從資料庫讀取出來

2.針對每條用戶記錄,建立一個lucene document

Document doc = new Document();

並根據你的需要,將用戶信息的各個欄位對應luncene document中的field 進行添加,如:

doc.add(new Field(“NAME”,”USERNAME”, Field.Store.YES,Field.Index.UN_TOKENIZED));

然後將該條doc加入到索引中, 如: luceneWriter.addDocument(doc);

這樣就建立了lucene的索引庫

3.編寫對索引庫的搜索程序(看lucene文檔),通過對lucene的索引庫的查找,你可以快速找到對應記錄的ID

4.通過ID到資料庫中查找相關記錄

上面闡述了lucene的大體用法,不知道是不是說的很清楚。

原創文章,作者:KRFY,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/140839.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
KRFY的頭像KRFY
上一篇 2024-10-04 00:24
下一篇 2024-10-04 00:24

相關推薦

發表回復

登錄後才能評論