zoukankan      html  css  js  c++  java
  • C# 输入ip段生成ip地址

    具体代码如下:

    private void button1_Click(object sender, EventArgs e)
            {
                string StartIp = "";
                string EndIp = "";
                StartIp = Startinput.Text;
                EndIp = Endinput.Text;
                uint iStartip = ipTint(StartIp);
                uint iEndIp = ipTint(EndIp);
                //string ip_result="";
                StringBuilder ip_result=new StringBuilder();
                if (iEndIp >= iStartip)
                {
                    for (uint ip = iStartip; ip <= iEndIp; ip++)
                    {
                        ip_result.Append(intTip(ip)).Append(" ");
                        //ip_result = ip_result + intTip(ip)+" ";
                    }
                    resultTextBox.Text = ip_result.ToString();   //RichTextBox
                }
                else
                {
                    MessageBox.Show("天啊,起始ip居然比终止ip还大");
                }
            }
            public static uint ipTint(string ipStr)
            {
                string[] ip = ipStr.Split('.');
                uint ipcode = 0xFFFFFF00 | byte.Parse(ip[3]);
                ipcode = ipcode & 0xFFFF00FF | (uint.Parse(ip[2]) << 0x8);
                ipcode = ipcode & 0xFF00FFFF | (uint.Parse(ip[1]) << 0xF);
                ipcode = ipcode & 0x00FFFFFF | (uint.Parse(ip[0]) << 0x18);
                return ipcode;
            }
            public static string intTip(uint ipcode)
            {
                byte a = (byte)((ipcode & 0xFF000000) >> 0x18);
                byte b = (byte)((ipcode & 0x00FF0000) >> 0xF);
                byte c = (byte)((ipcode & 0x0000FF00) >> 0x8);
                byte d = (byte)(ipcode & 0x000000FF);
                string ipStr = string.Format("{0}.{1}.{2}.{3}", a, b, c, d);
                return ipStr;
            }

    参考地址:http://blog.csdn.net/dolphin_h/article/details/38726613

  • 相关阅读:
    ubuntu16.04下docker安装和简单使用(转)
    spring security There was an unexpected error (type=Forbidden, status=403).
    笔记42 Spring Web Flow——Demo(2)
    Idea debug时报错:Command line is too long
    特殊字符(包括emoji)梳理和UTF8编码解码原理(转)
    如何理解多租户架构?(转)
    Android Studio使用阿里云Aliyun Maven仓库
    解决 INSTALL FAILED CONFLICTING PROVIDER
    Android解决冲突
    Mysql查询库、表存储量(Size)
  • 原文地址:https://www.cnblogs.com/louby/p/5983440.html
Copyright © 2011-2022 走看看