//

        public static bool _IsValidAddressBin(string addr)
        {
            string valid = "10.";
            bool   ok    = true;

            if (ok = (!string.IsNullOrEmpty(addr)) && addr.Contains(".") && addr.Split('.').Length == 4)
            {
                foreach (char chr in addr)
                {
                    ok = valid.Contains(chr) ? ok : false;
                }

                foreach (string str in Formatters.Divide(addr))
                {
                    ok = str.Length == 8 ? ok : false;
                }

                foreach (string str in Formatters.Divide(addr))
                {
                    ok = (str != "") ? (_IsValidAddressNumber(Convert.ToInt32(str, 2).ToString()) ? ok : false) : false;
                }
            }

            return(ok);
        }
Exemple #2
0
        /// <summary>
        /// Converte un indirizzo in base 10 in base binaria
        /// </summary>
        /// <param name="address">Indirizzo in base decimale</param>
        /// <returns>Indirizzo trasformato in base binaria</returns>
        public static string AddressIntToBin(string address)
        {
            string[] _parts = Formatters.Divide(address);
            string[] parts  = new string[4];

            for (int v = 0; v < 4; v++)
            {
                parts[v] = Convert.ToString(int.Parse(_parts[v]), 2);
            }

            for (int v = 0; v < parts.Length; v++)
            {
                while (parts[v].Length < 8)
                {
                    parts[v] = "0" + parts[v];
                }
            }

            string result = Formatters.Merge(parts);

            if (result.Length != 35)
            {
                throw new Exception("Errore interno del codice - lunghezza della Subnetmask binaria non valida!");
            }

            return(result);
        }
Exemple #3
0
        /// <summary>
        /// Converte un indirizzo in base binaria in base decimale
        /// </summary>
        /// <param name="address">Indirizzo in base binaria</param>
        /// <returns>Indirizzo trasformato in base decimale</returns>
        public static string AddressBinToInt(string address)
        {
            string[] _parts = Formatters.Divide(address);
            int[]    parts  = new int[4];

            for (int v = 0; v < 4; v++)
            {
                parts[v] = Convert.ToInt32(_parts[v], 2);
            }

            return(Formatters.Merge(parts));
        }
        public static bool _IsValidAddressInt(string addr)
        {
            string valid = "1234567890.";
            bool   ok    = true;

            if (ok = (!string.IsNullOrEmpty(addr)) && addr.Contains(".") && addr.Split('.').Length == 4)
            {
                foreach (char chr in addr)
                {
                    ok = valid.Contains(chr) ? ok : false;
                }

                foreach (string str in Formatters.Divide(addr))
                {
                    ok = _IsValidAddressNumber(str) ? ok : false;
                }
            }

            return(ok);
        }