.NET Tip: Return File Contents as a String | CodeGuru

.NET Tip: Return File Contents as a String

The applications I’ve been working on lately send a lot of email notifications out as the status of the application and monitored devices change. There are a handful of different email messages that could be sent. I wanted a means to store the bodies of these emails in a manner that would be easy to […]

Written By
CodeGuru Staff
CodeGuru Staff
Feb 12, 2008
2 minute read
CodeGuru content and product recommendations are editorially independent. We may make money when you click on links to our partners. Learn More

The applications I’ve been working on lately send a lot of email notifications out as the status of the application and monitored devices change. There are a handful of different email messages that could be sent. I wanted a means to store the bodies of these emails in a manner that would be easy to update without me having to be involved. I considered storing them in the database, but that would not be very easy for the person responsible for maintaining the body of the email. Instead, I chose to store the body of each email in a file. For my application, this had the right balance of flexibility and ease of use. When I found myself starting to write the code to read in the body of an email more than, once I created a method that would read in the entire file and return it as a string. I then can easily process the body text if needed and send it out in an email. Here is the code to read a file:

public static string GetFileContents(string FileName)
{
   StreamReader sr = null;
   string FileContents = null;

   try
   {
      FileStream fs = new FileStream(FileName, FileMode.Open,
                                     FileAccess.Read);
      sr = new StreamReader(fs);
      FileContents = sr.ReadToEnd();
   }
   finally
   {
      if(sr != null)
         sr.Close();
   }

   return FileContents;
}

This should be fairly strightforward to follow. First, a FileStream is created to control access to the file. Next, a StreamReader is created and associated with the FileStream. The ReadToEnd() method is then called to retrieve the entire contents of the file and store it in a local string variable. If the StreamReader was able to open the file successfully, it is closed and finally, the local string holding the contents of the file is returned from the method.

I added this simple method as a static method in my utility class. Now, I have easy access to reading the contents of a file from anywhere in my applications.

About the Author

Jay Miller is a Software Engineer with Electronic Tracking Systems, a company dedicated to robbery prevention, apprehension, and recovery based in Carrollton, Texas. Jay has been working with .NET since the release of the first beta and is co-author of Learn Microsoft Visual Basic.Net In a Weekend. Jay can be reached via email at jmiller@sm-ets.com.

CodeGuru Logo

CodeGuru covers topics related to Microsoft-related software development, mobile development, database management, and web application programming. In addition to tutorials and how-tos that teach programmers how to code in Microsoft-related languages and frameworks like C# and .Net, we also publish articles on software development tools, the latest in developer news, and advice for project managers. Cloud services such as Microsoft Azure and database options including SQL Server and MSSQL are also frequently covered.

Property of TechnologyAdvice. © 2026 TechnologyAdvice. All Rights Reserved

Advertiser Disclosure: Some of the products that appear on this site are from companies from which TechnologyAdvice receives compensation. This compensation may impact how and where products appear on this site including, for example, the order in which they appear. TechnologyAdvice does not include all companies or all types of products available in the marketplace.