Code:
using System;
using System.IO;
using System.Text.RegularExpressions;

namespace Chapter6Problem6
{
    class Program
    {
        const string INPUT_FILE = "\\Projects\\Chapter6Problem6\\Chapter6Problem6\\inventory.txt";
        const string OUTPUT_FILE = "\\Projects\\Chapter6Problem6\\Chapter6Problem6\\list.txt";

        static int records = 8;
        static uint i;
        static string lineIn;

        static int[] recordCode = new int[records + 1];
        static string[] partNumber = new string[records + 1];
        static string[] partDescription = new string[records + 1];
        static int[] balance = new int[records + 1];

        static StreamReader fileIn;
        static StreamWriter fileOut;

        static void Main()
        {
            if (OpenFiles())
            {
                InputData();
                ValidateData(lineIn,i);
                CloseFiles();
            }
        }

        static bool OpenFiles()
        {
            bool successOpeningFile = true;

                       if (File.Exists(INPUT_FILE))
            {
                fileIn = File.OpenText(INPUT_FILE);
                Console.WriteLine("{0} was opened!", INPUT_FILE);
            }
            else
            {
                Console.WriteLine("Error: {0} does not exist!", INPUT_FILE);
                successOpeningFile = false;
            }

            fileOut = File.CreateText(OUTPUT_FILE);

            if (File.Exists(OUTPUT_FILE))
                Console.WriteLine("{0} was created!", OUTPUT_FILE);
            else
            {
                Console.WriteLine("Error: {0} could not be created!", OUTPUT_FILE);
                successOpeningFile = false;
            }

            return successOpeningFile;

        }

        static void InputData()
        {
            while ((lineIn = fileIn.ReadLine()) != null)
            {
                ParseLineIn(lineIn, i);
                i++;
            }
        }

        static void ParseLineIn(string lineIn, uint i)
        {
            string[] words = new string[2];

            lineIn = lineIn.Trim();
            while (Regex.IsMatch(lineIn, "[ ] {2}"))
                lineIn = lineIn.Replace("  ", " ");
            words = lineIn.Split(' ');
            recordCode[i] = int.Parse(words[0]);
            partNumber[i] = words[1];
            partDescription[i] = words[2];
            balance[i] = int.Parse(words[3]);
        }

        static void ValidateData(string partnumber, uint i)
        {
            while(recordCode[i] == 11 && balance[i] == 0)
            {
                while (Regex.IsMatch(partnumber, "[A-Z] {2} [0-9] {4}"))
                    Display();
            }
        }
        
        static void Display()
        {
            int i;

            fileOut.WriteLine("Record Code         Part #           Description                Balance");
            fileOut.WriteLine("-----------------------------------------------------------------------");

            for(i = 0; i <= records; i++)
                fileOut.WriteLine("{0}           {1}            {2}                      {3}", recordCode[i], partNumber[i], partDescription[i], balance[i]);
            fileOut.WriteLine("-----------------------------------------------------------------------");
            
        }

        static void CloseFiles()
        {
            fileIn.Close();
            fileOut.Close();
        }

    }
}

the program compiles and the text is created but no output for some reason