(
search only in doc file)
hope my code will help u
Public string url;
protected void Button3_Click(object sender, EventArgs e)
{
Process[] ap = Process.GetProcesses();
foreach (Process p in ap)
{
if (p.ProcessName == "WINWORD")
{
p.Kill();
}
}
StringBuilder sb = new StringBuilder();
StringBuilder flenme = new StringBuilder();
ArrayList li = new ArrayList();
string pat = @"~\uploads";
string[] filename = Directory.GetFiles(Server.MapPath(pat));
foreach (var r in filename)
{
string[] split = Regex.Split(r, @"\\");
li.Add(split [split .Length - 1]);
}
foreach (var j in li)
{
object file = Server.MapPath(pat) + "\\" + j.ToString();
object nullobj = System.Reflection.Missing.Value;
Microsoft.Office.Interop.Word.Application wordapp = new Microsoft.Office.Interop.Word.Application();
Microsoft.Office.Interop.Word.Document doc = wordapp.Documents.Open(ref file, ref nullobj, ref nullobj, ref nullobj, ref nullobj, ref nullobj, ref nullobj, ref nullobj, ref nullobj, ref nullobj, ref nullobj, ref nullobj);
doc.ActiveWindow.Selection.WholeStory();
doc.ActiveWindow.Selection.Copy();
string result1 = doc.Content.Text.Trim();
string result2 = Regex.Replace(result1, @"[\r\a]", " ");
string result = Regex.Replace(result2, @"\s+", " ");
char[] del = { ' ' };
string[] SplittedResult = result.Split(del);
doc.Close();
url = "Default3.aspx?" + TextBox1.Text;
foreach (string i in SplittedResult)
{
if (TextBox1.Text.ToLower() == i.ToLower())
{
sb.AppendLine("<span filename="" + j.ToString() + "" style="color: #FF0000">" + j.ToString() + " </span><br />" + result + "<hr />");
sb.Append("?//_\\??");
break;
}
}
}
Session["Result"] = sb;
if (Session["Result"].ToString() != "" && Session["Result"] != null)
{
Response.Write("<script language=javascript>window.open('" + url + "')</script>");
}
else
{
Literal1.Text = "No match Found";
}
}
on search result page
protected void Page_Load(object sender, EventArgs e)
{
if (Session["Result"] != null)
{
string sessionResult = Session["Result"].ToString();
string FormatedResult = Regex.Replace(sessionResult , @"[\r\n]", " ");
string FinalResult= FormatedResult .Replace("?//_\\??", "<br />");
Response.Write(FinalResult);
}
}