static void Main(string[] args) { EnumError result = EnumError.NoError; try { IPrefixBuilder wdc = null; if (args.Length > 0) { if (args.Length != 3) { ConsoleLogger.LogMessage("\r\nUsage AutoCompleteConsole.exe\r\n\r\nor\r\n\r\nUsage AutoCompleteConsole.exe [prefixbuilder:1|2] <in_file> <out_file>"); return; } switch (int.Parse(args[0])) { case (int)EnumPrefixBuilder.Simple: { wdc = new SimplePrefixBuilder(); break; } case (int)EnumPrefixBuilder.Trie: { wdc = new TriePrefixBuilder(); break; } default: { wdc = new TriePrefixBuilder(); break; } } wdc.Init(10); result = wdc.DoBuildAndUseFiles(args[1], args[2]); #if DEBUG ConsoleLogger.LogMessage("Press Enter to continue"); Console.Read(); #endif } else { wdc = new TriePrefixBuilder(); result = wdc.UseDataConsole(); } if (result != EnumError.NoError) { ConsoleLogger.LogMessage("Code return with error: result: " + result.ToString()); } } catch (IOException ioe) { ConsoleLogger.LogMessage("Ошибка ввода/вывода " + ioe.Message); } catch (Exception ex) { ConsoleLogger.LogMessage("Error: "+ex.Message); } }