アットウィキロゴ

二ジョン後

package lu;
 
import org.apache.lucene.analysis.ja.JapaneseAnalyzer;
import org.apache.lucene.index.DirectoryReader;
import org.apache.lucene.search.TopScoreDocCollector;
import org.apache.lucene.search.IndexSearcher;
import org.apache.lucene.queryparser.classic.QueryParser;
import org.apache.lucene.index.IndexReader;
import org.apache.lucene.document.StringField;
import org.apache.lucene.document.TextField;
import java.io.BufferedReader;
import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.Date;
import org.apache.lucene.analysis.Analyzer;
import org.apache.lucene.document.Document;
import org.apache.lucene.document.Field;
import org.apache.lucene.document.Field.Index;
import org.apache.lucene.document.Field.Store;
import org.apache.lucene.index.IndexWriter;
import org.apache.lucene.search.IndexSearcher;
import org.apache.lucene.search.Query;
import org.apache.lucene.search.ScoreDoc;
import org.apache.lucene.search.TopDocs;
import org.apache.lucene.store.FSDirectory;
import org.apache.lucene.analysis.Analyzer;
import org.apache.lucene.analysis.standard.StandardAnalyzer;
import org.apache.lucene.store.RAMDirectory;
import org.apache.lucene.store.Directory;
import org.apache.lucene.index.IndexWriterConfig;
 
public class pro {
 
 
    public static void main(String[] args) {
        pro t=new pro();
    }
 
    pro(){
 
 
 
try{     
 
  Analyzer an = new JapaneseAnalyzer();  
 
  Directory id = new RAMDirectory();
 
IndexWriterConfig conf = new IndexWriterConfig(an);
 
String a="猫";
 
IndexWriter w = new IndexWriter(id, conf);
addDoc(w, a, "193398817");
addDoc(w, "猫は猫", "55320055Z");
addDoc(w, "犬は雨", "55063554A");
addDoc(w, "風は風", "9900333X");
 
w.close();
 
    String qs ="風";
 
   Query q = new QueryParser("title", an).parse(qs);
 
    int hitsPerPage = 2;
    IndexReader reader = DirectoryReader.open(id);
    IndexSearcher searcher = new IndexSearcher(reader);
    TopScoreDocCollector collector = TopScoreDocCollector.create(hitsPerPage);
    searcher.search(q, collector);
    ScoreDoc[] hits = collector.topDocs().scoreDocs;
 
 
 
    for (ScoreDoc sc : hits) {
            Document docx = searcher.doc(sc.doc);
            String pathx = docx.get("title");
            System.out.println(pathx);
        }
 
 
 
 
 
 
 
}catch(IOException e){}
 catch (Exception ex){}
 
 
 
 
 
 
 
 
 
 
    }
    private static void addDoc(IndexWriter w, String title, String isbn) throws IOException {
    Document doc = new Document();
    doc.add(new TextField("title", title, Field.Store.YES));
    doc.add(new StringField("isbn", isbn, Field.Store.YES));
    w.addDocument(doc);
  }
 
}
 
最終更新:2015年04月12日 21:31