public static ITxtFileProcessor GetFileProcessor(TxtFileParser parser) { ITxtFileProcessor dataProvider = null; switch (parser.DataProviderType) { case DataProviderTypes.Real: dataProvider = new TxtFileProcessor(parser); break; case DataProviderTypes.Fake: dataProvider = new FakeFileProcessor(parser); break; default: break; } if (dataProvider != null) { if (!dataProvider.CheckFileExistance()) { dataProvider = null; } } return(dataProvider); }
public static void ShowFileContent(TxtFileParser parser) { string[] content = parser.CurrentFileProcessor.ReadAllFile(); foreach (string item in content) { Console.WriteLine(item); } Console.WriteLine(); Console.WriteLine(PRESS_ANY_KEY_MESSAGE); Console.ReadKey(); }
private static void CountLineEntries(string path, string line) { TxtFileParser parser = new TxtFileParser(path); if (parser.CurrentFileProcessor == null) { UI.ShowMessage(MessageTypes.FileNotFound); return; } int entryCount = parser.CountLineEntries(line); UI.ShowMessage(MessageTypes.LineEntryCount, entryCount.ToString()); }
public FakeFileProcessor(TxtFileParser parser) { _parser = parser; _filePath = parser.FilePath; LargeFile = false; Data = new string[] { "Cats", "Dogs", "Cats", "Cats", "Dogs" }; }
private static void ChangeLines(string path, string searchLine, string newLine) { TxtFileParser parser = new TxtFileParser(path); if (parser.CurrentFileProcessor == null) { UI.ShowMessage(MessageTypes.FileNotFound); return; } if (parser.ReplaceLine(searchLine, newLine)) { UI.ShowFileContent(parser); } else { UI.ShowMessage(MessageTypes.LineNotFound, newLine); } }
public TxtFileProcessor(TxtFileParser parser) { _parser = parser; _filePath = Path.GetFullPath(parser.FilePath); }