示例#1
0
        public String Encode(String input)
        {
            //1. extract input into parts
            int           start = 0;
            List <String> parts = new List <String>();

            while (start < input.Length)
            {
                int pLen = Rando.RandomInt(this.MinPartLength, this.MaxPartLength);
                if (start + pLen >= input.Length)
                {
                    parts.Add(input.Substring(start));
                }
                else
                {
                    parts.Add(input.Substring(start, pLen));
                }
                start += pLen;
            }

            //2. shuffle order of parts
            String[] list = parts.ToArray();
            int[]    order;
            this.Shuffle(ref list, out order);

            //3. return concatenation of parts and ordering in given language
            return(LanguageFactory.EncodeToStringReorder(Language.Powershell, list, order));
        }