Description:

About Classes used -

#1: StreamReader class provides an access to read the data from Stream such as Text File.

#2: StreamWriter class provides an access to write the data from Stream such as Text File.

Namespace Required - System.IO, System.Diagnostics

Controls Used-

1. TextBox Control (txtInput, txtOutput)

2. Button Control (btnSelect, btnCreatePDF)

Here I implemented the Code for copying and appending Text Document to another Text Document.

The Code:

1. Variable Declarations

StreamReader rdr; //StreamReader Object for Reading File
StreamWriter wrt; //StreamWriter Object for Writing File

Listing 1

2. Select the Text Input & Output File (code both for “Select” Button).

//Select File with OpenFileDialog Box
String SelectFile(TextBox t)
{
using (OpenFileDialog file = new OpenFileDialog())
{
file.Filter = "Only Text Documents|*.txt";
//Show the Dialog Box & Select the File
file.ShowDialog();
//Return the selected File Name as String
return file.FileName;
}
}

Listing 2

3. Copy Data from one to another Text File (code for “Copy All” Button).

//Input File
rdr = new StreamReader(txtInput.Text);
//Output File
wrt = new StreamWriter(txtOutput.Text, false);
//Copy All Data From Input file to Output file
wrt.Write(rdr.ReadToEnd().ToString());
//Close the StreamWriter instance
wrt.Close();
MessageBox.Show("File Copied Successfully....");
//Open the Output file
Process.Start(txtOutput.Text);

Listing 3

4. Append Data from one to another Text File (code for “Append All” Button).

//Input File
rdr = new StreamReader(txtInput.Text);
//Output File
wrt = new StreamWriter(txtOutput.Text, true);
//Append All Data From Input file to Output file
wrt.WriteLine(Environment.NewLine +
"--------------- Appended File Start from here ---------------" +
Environment.NewLine);
wrt.Write(rdr.ReadToEnd().ToString());
//Close the StreamWriter instance
wrt.Close();
MessageBox.Show("File Appended Successfully....");
//Open the Output file
Process.Start(txtOutput.Text);

Listing 3

5. Now execute the Application and see the result (Figure 1).

Intended Result:

New Picture.png

Figure 1

Summary:

In this piece of writing, using C# environment, we have seen basic stream input/output operation for copying & appending text files using StreamWriter & StreamReader classes.