Exemplo n.º 1
0
        internal void SetSeparatorStyle(SeparatorStyle style)
        {
            switch (style)
            {
            case SeparatorStyle.Dot:
                DecimalSeparator  = '.';
                ArgumentSeparator = ',';
                break;

            default:
                DecimalSeparator  = ',';
                ArgumentSeparator = ';';
                break;
            }
            NumberFormat = new NumberFormatInfo();
            NumberFormat.NumberDecimalSeparator = DecimalSeparator.ToString();
            numberRegex = new Regex(NumberPattern);
        }
Exemplo n.º 2
0
        // ReSharper disable once ReturnTypeCanBeEnumerable.Global
        public Data ReadDataFromFile(string path, int classCount)
        {
            var data   = new Data();
            var format = new NumberFormatInfo {
                NumberDecimalSeparator = DecimalSeparator.ToString()
            };

            using (var file = new StreamReader(path))
            {
                for (var i = 0; i < SkipRows; i++)
                {
                    file.ReadLine();
                }

                string line;
                while ((line = file.ReadLine()) != null)
                {
                    var parts = line.Split(Separator);

                    if (parts.Length == 0)
                    {
                        continue;
                    }

                    var row = parts.Select(part => Convert.ToDouble(part.Trim(), format)).ToList();

                    for (var j = 0; j < classCount; j++)
                    {
                        data.ObjectClass.Add(row.Last());
                        row.RemoveAt(row.Count - 1);
                    }

                    data.Attributes.Add(row);
                }
            }

            if (Normalized)
            {
                Normalize(data);
            }

            return(data);
        }
Exemplo n.º 3
0
 private DataItems GenerateDataItems()
 {
     return(new DataItems(
                GameMode,
                IsGameJoltPlayer ? "1" : "0",
                GameJoltID.ToString(CultureInfo),
                DecimalSeparator.ToString(),
                Name,
                LevelFile,
                Position.ToP3DString(DecimalSeparator, CultureInfo),
                Facing.ToString(CultureInfo),
                Moving ? "1" : "0",
                Skin,
                BusyType,
                PokemonVisible ? "1" : "0",
                PokemonPosition.ToP3DString(DecimalSeparator, CultureInfo),
                PokemonSkin,
                PokemonFacing.ToString(CultureInfo)));
 }
Exemplo n.º 4
0
        public override IList <string> GetFirsts()
        {
            var result = new StringList();

            result.AddRange(Prefixes);
            //we assume that prefix is always optional, so number can always start with plain digit
            result.AddRange(new[] { "0", "1", "2", "3", "4", "5", "6", "7", "8", "9" });
            // Python float numbers can start with a dot
            if (IsSet(NumberOptions.AllowStartEndDot))
            {
                result.Add(DecimalSeparator.ToString());
            }

            if (IsSet(NumberOptions.AllowSign))
            {
                result.AddRange(new[] { "-", "+" });
            }

            return(result);
        }