Read A File Using C#

This program just demonstrates the use of FileStream & StreamReader. The program takes 1 parameter from the user; i.e., the file to read.

using System;  
using System.IO;  
class FileRead {  
    string filereadbuf; // buffer to store the content of file   
    public void ReadFile(string FileName, int FileSize) {  
        char[] buf = newchar[FileSize]; // lets define an array of type char field (i.e. variable) buf   
        // for more help please see .net sdk   
        StreamReader sr = new StreamReader(new FileStream(FileName, FileMode.Open, FileAccess.Read));  
        int retval = sr.ReadBlock(buf, 0, FileSize); // no. of bytes read   
        Console.Write("Total Bytes Read = " + retval + "\n");  
        filereadbuf = newstring(buf); // store it in our field   
        Console.WriteLine(filereadbuf); // lets print on screen   
        sr.Close();  
    }  
}  
class TestFileRead {  
    public static void Main(string[] args) {  
        String[] cmdline = Environment.GetCommandLineArgs(); // Get the command line parameter   
        Console.WriteLine("File Reader Using Stream Reader & File Stream \n");  
        if (cmdline.Length < 2) // If no parameter is given will show user the usage   
        {  
            Console.WriteLine("Usage: " + cmdline[0] + " <input file> ");  
            return;  
        }  
        // Using Directory Class & using a Method GetFiles we get file list from the current directory   
        // return value is array of files please see .net sdk documentation for more help.   
        File[] fe = (new Directory(".")).GetFiles(cmdline[1]);  
        if (fe.Length == 0) {  
            Console.WriteLine(cmdline[1] + ": file not found"); // if not found display a message to user   
            return;  
        }  
        FileRead fr = new FileRead();  
        try {  
            fr.ReadFile(cmdline[1], (int) fe[0].Length); // sends 2 parameter filename & length   
        } catch (IOException e) {  
            Console.WriteLine("I/O error occured" + e);  
            return;  
        }  
    } // Close brace of Main   
} // close brace of TestFileRead  

I would like to give thanks to Saurabh for his expert help, Mahesh for loading my code on his site (it rocks) and thanks to you too for reading it  -- you know who you are.

If you have any comments or doubts or find something terriblly wrong , please feel free to e-mail me !


Similar Articles