Home > DeveloperSection > Articles > Read Microsoft Word Document File by using C#

Read Microsoft Word Document File by using C#

Posted by  Arun Singh
on    August-29-2011 21:45 PM

C# C# 
Ratings:
3 Comment(s)
 42820  View(s)
Rate this:

Read Microsoft Word Document File by using C#

It is an efficient way through which we can read Microsoft Word Document file (or .docx extension file) by using C#.Net code.

Here I am making a window form application to read text of MS-Word file (Not image) and showing the ms-word text into windows form richtextbox control. Let’s see the brief demonstration of reading text from ms-word file in c#.

Step 1:  To read MS-Word file write the following code on Read Button click event.

/// <summary>

///This method read the document and writes into richtextbox control 

/// </summary>

 

        private voidbtn_Read_Click(objectsender, EventArgse)

        {

            // call the method to read ms-word document

            ReadMsWord();

        }

/// <summary>

        /// Read ms-word file

        /// </summary>

        public voidReadMsWord()

        {  

            // variable to store file path

            string filePath=null;

            // open dialog box to select file

            OpenFileDialog file= new OpenFileDialog();

            // dilog box title name

            file.Title="Word File";

            // set initial directory of computer system

            file.InitialDirectory= "c:\\";

            // set restore directory

            file.RestoreDirectory= true;

 

            // execute if block when dialog result box click ok button

            if (file.ShowDialog() ==DialogResult.OK)

            {

                // store selected file path

                filePath=file.FileName.ToString();          

            }

 

            try

            { 

                // create word application

                Microsoft.Office.Interop.Word.Applicationword=new Microsoft.Office.Interop.Word.ApplicationClass();

                // create object of missing value

                object miss= System.Reflection.Missing.Value;

                // create object of selected file path

                object path=filePath;

                // set file path mode

                object readOnly= false;

                // open document                

                Microsoft.Office.Interop.Word.Document docs=word.Documents.Open(refpath, refmiss, refreadOnly, refmiss, refmiss, refmiss, refmiss, refmiss,                                                                                    refmiss, refmiss, refmiss, refmiss, refmiss, refmiss, refmiss, refmiss);

              // select whole data from active window document

                docs.ActiveWindow.Selection.WholeStory();

                // handover the data to cllipboard

                docs.ActiveWindow.Selection.Copy();

                // clipboard create reference of idataobject interface which transfer the data

                IDataObject data= Clipboard.GetDataObject();

                //set data into richtextbox control in text format

                richTextBox2.Text=data.GetData(DataFormats.Text).ToString();

                // read bitmap image from clipboard with help of iddataobject interface

                Image img= (Image)data.GetData(DataFormats.Bitmap);

                // close the document

                docs.Close(refmiss, refmiss, refmiss);

            }

            catch (Exception ex) { MessageBox.Show(ex.ToString()); }

           

        }

Step 2: After write the above code debug the program and click on Read button

Read Microsoft Word Document File by using C#

When you click on Read button then a file dialog box will be appear for select an ms-word file, after select a file then press Open button.

Read Microsoft Word Document File by using C#

After clicked open button the following output will be appear as follows.

Read Microsoft Word Document File by using C#


Read Microsof Word Documents

By Rohit Kesharwani on   3 years ago
Nice article. It will help a lot.

Re: Read Microsof Word Documents

By Arun Singh on   3 years ago
Thanks Rohit !!!!!

Alternative to read Word files in C#

By James Howard on   2 years ago
Hi,

nice article!

For ones that are unable to use .NET Word automation, try this C# / VB.NET Word library that doesn't require Word application.

Here is a sample C# read Word:
// Load a document.
DocumentModel document = DocumentModel.Load("Document.docx", DocxLoadOptions.DocxDefault);

// Iterate over all paragraphs in the document.
foreach (Paragraph paragraph in document.GetChildElements(true, ElementType.Paragraph))
{
    // Iterate over all runs in the paragraph and write their text to console.
    foreach (Run run in paragraph.GetChildElements(true, ElementType.Run))
        Console.Write(run.Text);
    Console.WriteLine();
}















Recent Activities


Kamlakar Singh added new Blog Convert Text Document to PDF File   11 days ago

Kamlakar Singh added new Article Introduction to Backbone.js   11 days ago

Kamlakar Singh added new Question Explain the AdRotator Control.   11 days ago

Don't want to miss updates? Please click the below button!