Mezclar y ordenar archivos Curso de Programación C# Sharp

Lección:

Gestión Dinámica de Memoria


Ejercicio:

Mezclar y ordenar archivos 10


Objetivo:

Cree un programa para leer el contenido de dos archivos diferentes y mostrarlo mezclado y ordenado alfabéticamente. Por ejemplo, si los archivos contienen

Dog
Cat
and

Chair
Table

, debería mostrar

Cat
Chair
Dog
Table


Código:

using System;
using System.IO;
using System.Collections;
namespace Text
{
    class Program
    {
        static void Main(string[] args)
        {
            Console.Write("Enter name of file1: ");
            string nameFile1 = Console.ReadLine();

            Console.Write("Enter name of file2: ");
            string nameFile2 = Console.ReadLine();

            if ((!File.Exists(nameFile1)) ||
                 (!File.Exists(nameFile2)))
            {
                Console.Write("File 1 or File 2 not exists");
                return;
            }

            try
            {
                StreamReader myfile = File.OpenText(nameFile1);

                ArrayList list = new ArrayList();

                string line;
                do
                {
                    line = myfile.ReadLine();
                    if (line != null)
                        list.Add(line);
                }

                while (line != null);
                myfile.Close();

                myfile = File.OpenText(nameFile2);

                line = "";

                do
                {
                    line = myfile.ReadLine();
                    if (line != null)
                        list.Add(line);
                }

                while (line != null);
                myfile.Close();

                list.Sort();

                for (int i = 0; i < list.Count; i++)
                    Console.WriteLine(list[i]);
            }
            catch (Exception e)
            {
                Console.WriteLine("Error al intentar abir el fichero.");
            }
        }
    }
}