using System.Collections.Generic;
public static List<string> EmptyFile = new List<string>();
public static List<string> OneLineFile = new List<string> {"1"};
public static List<string> TwoLineFile = new List<string> {"1", "2"};
public static List<string> BiggerFile = new List<string> {"1", "2", "3", "4"};
public static void Main()
ProcessFile("anything", new List<string>());
ProcessFile("notfound", new List<string> {"1"});
ProcessFile("1", new List<string> {"1"});
ProcessFile("notfound", new List<string> {"1", "2"});
ProcessFile("1", new List<string> {"1", "2"});
ProcessFile("2", new List<string> {"1", "2"});
ProcessFile("notfound", new List<string> {"1", "2", "3"});
ProcessFile("1", new List<string> {"1", "2", "3"});
ProcessFile("3", new List<string> {"1", "2", "3"});
ProcessFile("2", new List<string> {"1", "2", "3"});
public static void ProcessFile(string entry, List<string> file)
Console.WriteLine("------------------------------------");
Console.WriteLine("entry: " + entry);
Console.WriteLine("file:");
foreach(var item in file)
Console.WriteLine(Environment.NewLine);
int fileLength = file.Count;
while(userLine < 0 && linePointer < fileLength)
if(file[linePointer] == entry)
Console.WriteLine("user found: " + (userLine > -1).ToString());
while(linePointer < userLine)
while(linePointer < fileLength - 1)
file[linePointer] = file[linePointer + 1];
file[fileLength - 1] = "";
Console.WriteLine("resulting file:");
foreach(var item in file)
Console.WriteLine(Environment.NewLine);
Console.WriteLine("------------------------------------");
Console.WriteLine(Environment.NewLine);