user3661037
user3661037

Reputation: 11

Read and write to text file efficiently

I have a homework assignment to create a C# console program. It should create a text file with 2 phrases:

Hello, World!
Goodbye, Cruel World!

Then I also must create a program to read the 2 phrases from the file.

After two hours this is what I have. It works, but I want to rewrite the program to be more efficient. I am mainly struggling on how to output the file into a .cs file capable of running.

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.IO;

namespace ConsoleApplication3
{    
    class Program
    {
        static void Main(string[] args)
        {
            //structure.txt contains the program we will enter our values into.
            String filePath = "Structure.txt";               
            WriteToFile(filePath);
        }

        public static void WriteToFile(string filePath)
        {
            //create a string array to gather our text file information.    
            StreamReader reader = new StreamReader(filePath);
            StreamReader info = new StreamReader("Structure.txt");

            StreamWriter writer = new StreamWriter("Hello.cs", true);
            String temp = String.Empty;

            while (!info.EndOfStream)
            {
                String tempstring = String.Empty;
                tempstring = reader.ReadLine();

                while (!reader.EndOfStream)
                {
                    temp = reader.ReadLine();
                    writer.WriteLine(temp);
                    if (temp == "//break")
                    {
                        writer.WriteLine("String1 = {}", tempstring);

                    }
                }
            }
            reader.Close();
            info.Close();

            writer.Close();
        }    
    }
}

Upvotes: 0

Views: 168

Answers (1)

T.S.
T.S.

Reputation: 19350

More efficient? sure

// write
string[] lines = new [] {"Hello, World!", "Goodbye, Cruel World!"};
File.WriteAllLines("c:\\myFile.txt", lines);  

// read
string[] lines = File.ReadAllLines("c:\\myFile.txt");

This is all. . .

Upvotes: 1

Related Questions