1. You don't have a field named "contents" in the index. (It is "text") use "text" field to search. 2. Use "file_text" string while indexing ( not encoding.GetBytes(file_text) ) 3. You should index the "text" field as ANALYZED. 4. You have to read some manuals before starting to code.
DIGY -----Original Message----- From: asmcad [mailto:asm...@gmail.com] Sent: Wednesday, November 17, 2010 10:02 PM To: lucene-net-dev Subject: need some help =) it's a simple index and search application but i couldn't make it work. it doesn't give any error but it doesn't give any results too. 1. using System; 2. using System.Collections.Generic; 3. using System.ComponentModel; 4. using System.Data; 5. using System.Drawing; 6. using System.Linq; 7. using System.Text; 8. using System.Windows.Forms; 9. using Lucene.Net; 10. using Lucene.Net.Analysis.Standard; 11. using Lucene.Net.Documents; 12. using Lucene.Net.Index; 13. using Lucene.Net.QueryParsers; 14. using Lucene.Net.Search; 15. using System.IO; 16. 17. namespace newLucene 18. { 19. public partial class Form1 : Form 20. { 21. public Form1() 22. { 23. InitializeComponent(); 24. } 25. 26. private void buttonIndex_Click(object sender, EventArgs e) 27. { 28. IndexWriter indexwrtr = new IndexWriter(@"c:\index\",new StandardAnalyzer() , true); 29. Document doc = new Document(); 30. string filename = @"fer.txt"; 31. Lucene.Net.QueryParsers.QueryParser df; 32. 33. 34. 35. System.IO.StreamReader local_StreamReader = new System.IO.StreamReader(@"C:\z\fer.txt"); 36. string file_text = local_StreamReader.ReadToEnd(); 37. 38. System.Text.UTF8Encoding encoding = new System.Text.UTF8Encoding(); 39. doc.Add(new Field("text",encoding.GetBytes(file_text),Field.Store.YES)); 40. doc.Add(new Field("path",encoding.GetBytes(@"C:\z\"),Field.Store.YES)); 41. doc.Add(new Field("title", encoding.GetBytes(filename), Field.Store.YES)); 42. indexwrtr.AddDocument(doc); 43. 44. indexwrtr.Optimize(); 45. indexwrtr.Close(); 46. 47. } 48. 49. private void buttonSearch_Click(object sender, EventArgs e) 50. { 51. IndexSearcher indxsearcher = new IndexSearcher(@"C:\index\"); 52. 53. QueryParser parser = new QueryParser("contents", new StandardAnalyzer()); 54. Query query = parser.Parse(textBoxQuery.Text); 55. 56. //Lucene.Net.QueryParsers.QueryParser qp = new QueryParser(Lucene.Net.QueryParsers.CharStream s).Parse(textBoxQuery.Text); 57. Hits hits = indxsearcher.Search(query); 58. 59. 60. for (int i = 0; i < hits.Length(); i++) 61. { 62. 63. Document doc = hits.Doc(i); 64. 65. 66. string filename = doc.Get("title"); 67. string path = doc.Get("path"); 68. string folder = Path.GetDirectoryName(path); 69. 70. 71. ListViewItem item = new ListViewItem(new string[] { null, filename, "asd", hits.Score(i).ToString() }); 72. item.Tag = path; 73. 74. this.listViewResults.Items.Add(item); 75. Application.DoEvents(); 76. } 77. 78. indxsearcher.Close(); 79. 80. 81. 82. 83. } 84. } 85. } thanks