ResourceReader Constructor (String)


Initializes a new instance of the ResourceReader class for the specified named resource file.

Namespace:   System.Resources
Assembly:  mscorlib (in mscorlib.dll)

public ResourceReader(
	string fileName


Type: System.String

The path and name of the resource file to read. filename is not case-sensitive.

Exception Condition

The fileName parameter is null.


The file cannot be found.


An I/O error has occurred.


The resource file has an invalid format. For example, the length of the file may be zero.

The ResourceReader(String) constructor instantiates a ResourceReader object that retrieves resources from a standalone .resources file. To retrieve resources from an embedded .resources file, use the ResourceReader(Stream) constructor.

System_CAPS_security Security Note

Using an instance of this object with untrusted data is a security risk. Use this object only with trusted data. For more information, see Untrusted Data Security Risks.

The example in this section uses the following .txt file named PatientForm.txt to define the resources used by an application.

Title="Top Pet Animal Clinic"
Label1="Patient Number:"
Label2="Pet Name:"
Label5="Date of Birth:"
Label9="Home Phone:"
Label10="Work Phone:"
Label11="Mobile Phone:"

You can compile this .txt file into a .resources file by issuing the following command:

resgen PatientForm.txt

The following example enumerates the resources in PatientForm.resources and displays the name and value of each.

using System;
using System.Collections;
using System.Resources;

public class Example
   public static void Main()
      var rr = new ResourceReader("PatientForm.resources");
      IDictionaryEnumerator dict = rr.GetEnumerator();
      int ctr = 0;

      while (dict.MoveNext()) {
         Console.WriteLine("{0:00}: {1} = {2}", ctr, dict.Key, dict.Value);

// The example displays the following output:
//       01: Label3 = "Species:"
//       02: Label2 = "Pet Name:"
//       03: Label1 = "Patient Number:"
//       04: Label7 = "Owner:"
//       05: Label6 = "Age:"
//       06: Label5 = "Date of Birth:"
//       07: Label4 = "Breed:"
//       08: Label9 = "Home Phone:"
//       09: Label8 = "Address:"
//       10: Title = "Top Pet Animal Clinic"
//       11: Label10 = "Work Phone:"
//       12: Label11 = "Mobile Phone:"

.NET Framework
Available since 1.1
Return to top