public static Employee Load(string firstName, string lastName) { Employee employee = new Employee(); // Instantiate a FileStream using FirstNameLastName.dat // for the filename. FileMode.Open will open // an existing file or else report an error. FileStream stream = new FileStream( firstName + lastName + ".dat", FileMode.Open); // Create a SteamReader for reading text from the file. StreamReader reader = new StreamReader(stream); // Read each line from the file and place it into // the associated property. employee.FirstName = reader.ReadLine(); employee.LastName = reader.ReadLine(); employee.Salary = reader.ReadLine(); // Close the StreamReader and its Stream. reader.Close(); stream.Close(); return employee; }
static void Main() { Employee employee1; Employee employee2 = new Employee(); employee2.SetName("Inigo", "Montoya"); employee2.Save(); // Modify employee2 after saving. IncreaseSalary(employee2); // Load employee1 from the saved version of employee2 employee1 = DataStorage.Load("Inigo", "Montoya"); Console.WriteLine( "{0}: {1}", employee1.GetName(), employee1.Salary); // ... }
// Save an employee object to a file // named with the Employee name. // Error handling not shown. public static void Store(Employee employee) { // Instantiate a FileStream using FirstNameLastName.dat // for the filename. FileMode.Create will force // a new file to be created or override an // existing file. FileStream stream = new FileStream( employee.FirstName + employee.LastName + ".dat", FileMode.Create); // Create a StreamWriter object for writing text // into the FileStream StreamWriter writer = new StreamWriter(stream); // Write all the data associated with the employee. writer.WriteLine(employee.FirstName); writer.WriteLine(employee.LastName); writer.WriteLine(employee.Salary); // Close the StreamWriter and its Stream. writer.Close(); stream.Close(); }
static void IncreaseSalary(Employee employee) { employee.Salary = "Enough to survive on"; }