更新(添加)
protected void btnUpdate_Click(object sender, EventArgs e)
{
Boolean EnableCreate = true;
if (System.IO.File.Exists(index + "\\segments.gen"))
{
EnableCreate = false;
}
IndexWriter writer = new IndexWriter(FSDirectory.Open(new System.IO.FileInfo(index)), new StandardAnalyzer(Version.LUCENE_CURRENT), EnableCreate);
// System.IO.FileInfo file = new System.IO.FileInfo(txtID.Text.Trim().Replace("\\", "\\\\"));
System.IO.FileInfo file = new System.IO.FileInfo(@"E:\Demo\Document\ksp.txt");
Term term = new Term("path", txtID.Text.Trim());
Lucene.Net.Documents.Document document = FileDocument.Document(file);
writer.UpdateDocument(term, document);
writer.Close();
}
删除
protected void btnDel_Click(object sender, EventArgs e)
{
try
{
Directory directory = FSDirectory.Open(new System.IO.FileInfo(index));
IndexReader reader = IndexReader.Open(directory, false);
删除所有记录
for (int i = 0; i < reader.MaxDoc(); i++)
{
reader.DeleteDocument(i);
}
//if (rdlDel.SelectedValue == "1") //根据ID删除记录
//{
// Int32 i = Convert.ToInt32(txtID.Text);
// reader.DeleteDocument(i);
// ltrResult.Text = "删除成功";
//}
//else if (rdlDel.SelectedValue == "2") // 根据路径删除记录
//{
// Term term = new Term("path", txtID.Text.Trim());
// Int32 num = reader.DeleteDocuments(term);
// ltrResult.Text = "删除" + num.ToString() + "条记录成功";
//}
Response.Write(reader.MaxDoc().ToString());
reader.Close();
directory.Close();
}
catch (System.Exception ex)
{
ltrResult.Text = " caught a " + e.GetType() + "\n with message: " + ex.Message;
}
}