//A solution that parses a sentence(s) and produces an output of a shortened sentence: //Input a sentence. //*parses the first letter //*the number of distinct characters between the beginning character and the ending character, //*parser the last letter //Output the shortened word //An example input: The smooth cat programmed. //An example output: T1e s4h c1t p8d static int Main(string[] args) { System.Diagnostics.Trace.Listeners.Add(new System.Diagnostics.ConsoleTraceListener()); //TODO:implement a an nugget command line parser to handle input bool errorInCommandLine = false; if (args == null || args.Length < 1 || String.IsNullOrEmpty(args[0])) { ShowHelp(); errorInCommandLine = true; } var outputMethod = SentenceBufferOutput.getOutput(); if (!errorInCommandLine) { foreach (var givenInput in args) { var inputIsSetenceFile = SentenceTextFile.IsStringASetenceFile(givenInput); if (inputIsSetenceFile) { var fileToHandle = new SentenceTextFile(givenInput); fileToHandle.FindShortenedSentencesForFile(outputMethod); } else if (Sentence.IsStringASetence(givenInput)) { var setenceToHandle = new Sentence(givenInput); outputMethod.WriteShortenedSentence(setenceToHandle.short_sentence); } //TODO:add command line option to control invalid input or throw exception when errors are found //for now this will run clean } } outputMethod.finshedOutput(); return errorInCommandLine ? program_had_error : program_had_no_error; }
public Sentence[] ResolveAllSentenceDetail() { var sentenceDetailToReturn = new List<Sentence>(); var linesFromFiles = File.ReadAllLines(file_location, file_encoding); foreach (var line in linesFromFiles) { if (String.IsNullOrEmpty(line)) { var itemToAdd = new Sentence(line); sentenceDetailToReturn.Add(itemToAdd); } } return sentenceDetailToReturn.ToArray(); }