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)
 42611  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   7 days ago

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

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

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