Esempio n. 1
0
        public void Run(string[] args)
        {
            var options = new DecoderArgs();

            for (var i = 0; i < args.Length; i++)
            {
                if (args[i][0] == '-')
                {
                    var key   = args[i].Substring(1).ToLower().Trim();
                    var value = "";

                    if (key == "decode")
                    {
                        continue;
                    }
                    else if (i < args.Length - 1)
                    {
                        i++;
                        value = args[i];
                        switch (key)
                        {
                        case "outputfile":
                            options.strOutputFileName = value;
                            break;

                        case "inputfile":
                            options.strInputFileName = value;
                            break;

                        case "modelfile":
                            options.strModelFileName = value;
                            break;

                        case "outputsegfile":
                            options.strOutputSegFileName = value;
                            break;

                        case "thread":
                            options.thread = int.Parse(value);
                            break;

                        case "nbest":
                            options.nBest = int.Parse(value);
                            break;

                        case "prob":
                            options.probLevel = int.Parse(value);
                            break;

                        case "maxword":
                            options.maxword = int.Parse(value);
                            break;

                        default:
                            var cc = Console.ForegroundColor;
                            Console.ForegroundColor = ConsoleColor.Red;
                            Console.WriteLine("No supported {0} parameter, exit", key);
                            Console.ForegroundColor = cc;
                            Usage();
                            return;
                        }
                    }
                    else
                    {
                        var cc = Console.ForegroundColor;
                        Console.ForegroundColor = ConsoleColor.Red;
                        Console.WriteLine("{0} is invalidated parameter.", key);
                        Console.ForegroundColor = cc;
                        Usage();
                        return;
                    }
                }
            }

            if (options.strInputFileName == null || options.strModelFileName == null)
            {
                Usage();
                return;
            }

            Decode(options);
        }