I've recently made a test. There were four tasks. One of them was to improve following code:
public class FooFileProcessor
{
public void ProcessFile(string filename)
{
Stream fileStream = File.OpenRead(filename);
Console.WriteLine(ReadAllContent(fileStream));
fileStream.Close();
}
public string ReadAllContent(Stream stream)
{
StreamReader streamReader = new StreamReader(stream);
return streamReader.ReadToEnd();
}
}
What I've suggested:
try
{
using (StreamReader sr = new StreamReader("TestFile.txt"))
{
String line = sr.ReadToEnd();
Console.WriteLine(line);
}
}
catch (Exception e)
{
Console.WriteLine("The file could not be read:");
Console.WriteLine(e.Message);
}
please, review my code and show all mistakes you've seen.