C# IP地址与数字之间的互转

using System;
using System.Collections.Generic;
using System.Linq;
using System.Net;
using System.Text; namespace ip2Long
{
class Program
{
static void Main(string[] args)
{
//首先,输入一个标准的IP地址 例如 192.168.1.1
Console.WriteLine("请输入一个标准的IP地址 例如 192.168.1.1");
//接收用户输入的数据
string ip = Console.ReadLine();
string IntIp = ipToLong(ip);
Console.WriteLine(string.Format("IP {0} 地址 转换后结果 :{1}", ip, IntIp));
IntIp = ipToLong(ip);
Console.WriteLine(string.Format("IP2 {0} 地址 转换后结果 :{1}", ip, IntIp));
ip = LongToip(IntIp);
Console.WriteLine(string.Format("数字 {0} 转换后IP地址结果 :{1}", IntIp, ip));
Console.ReadKey(); }
/// <summary>
/// IP地址转换为数字
/// </summary>
/// <param name="ip">ip地址</param>
/// <returns></returns>
static string ipToLong(string ip)
{
long IntIp = ;
string[] ips = ip.Split('.');
IntIp = long.Parse(ips[]) << 0x18 | long.Parse(ips[]) << 0x10 | long.Parse(ips[]) << 0x8 | long.Parse(ips[]);
return IntIp.ToString(); }
/// <summary>
/// C# 简单的写法
/// </summary>
/// <param name="ip"></param>
/// <returns></returns>
static string ipToLong2(string ip)
{
IPAddress ipaddress = IPAddress.Parse(ip);
byte[] addbuffer = ipaddress.GetAddressBytes();
Array.Reverse(addbuffer);
return System.BitConverter.ToUInt64(addbuffer, ).ToString();
}
/// <summary>
/// IP地址转换为数字
/// </summary>
/// <param name="ip">ip地址</param>
/// <returns></returns>
static string LongToip(string ip)
{
long IntIp = long.Parse(ip);
StringBuilder sb = new StringBuilder();
sb.Append(IntIp >> 0x18 & 0xff).Append(".");
sb.Append(IntIp >> 0x10 & 0xff).Append(".");
sb.Append(IntIp >> 0x8 & 0xff).Append(".");
sb.Append(IntIp & 0xff);
return sb.ToString(); }
}
}
C# IP地址与数字之间的互转的更多相关文章
- C# IP地址与整数之间的转换
IP地址与整数之间的转换 1.IP地址转换为整数 原理:IP地址每段可以看成是8位无符号整数即0-255,把每段拆分成一个二进制形式组合起来,然后把这个二进制数转变成一个无符号的32位整数. 举例:一 ...
- (C#)IP地址与数字地址相互转换
站长网IP查询地址:http://tool.chinaz.com/ip/ 和ip地址转换为数字的工具地址:http://www.msxindl.com/tools/ip/ip_num.asp 可以看到 ...
- 服务器、IP地址和域名之间有什么关系?
一.服务器 服务器其实就像我们的家用电脑一样,也有主板.CPU.内存.硬盘.电源等,但是由于它们处理问题的不同,服务器更像一台加强的家用电脑,服务器是为展网络业务而存放.处理数据的,所以服务器一般是存 ...
- php实现IP地址和数字相互转换
echo $a=ip2long ("202.97.224.68");//地址转换成数字 系统自带的函数 注:这里面有一个要注意的地方,大概由于PHP无法正确判断转换完的数字类型,出 ...
- IP地址与数字地址相互转换
/// <summary> /// IP地址转换成数字 /// </summary> /// <param name="addr">IP地址&l ...
- Python—IP地址与整数之间的转换
1. 将整数转换成IP: 思路:将整数转换成无符号32位的二进制,再8位进行分割,每8位转换成十进制即可. 方法一:#!usr/bin/python 2 #encoding=utf-8 3 #1. 将 ...
- python实现将IP地址转换为数字
话不多说,直接代码 ip_addr='192.168.2.10' # transfer ip to int def ip2long(ip): ip_list=ip.split('.') result= ...
- Oracle中SQL语句转化IP地址到数字
CREATE OR REPLACE FUNCTION ip_num(ipaddress IN VARCHAR2) RETURN NUMBER AS ipnum ; pos1 ; pos2 ; BEGI ...
- 【Go】IP地址转换:数字与字符串之间高效转换
转载:https://blog.thinkeridea.com/201903/go/ip2long.html IP 地址库中 IP 地址的保存格式一般有两种,一种是点分十进制形式(192.168.1. ...
随机推荐
- 12.22日wagas学习笔记
第一部分:vue-cli3 vue.config.js配置: baseUrl:process.env.NODE_ENV === 'production'?'/production-sub-path': ...
- 安装Python2.7出现configure: error: no acceptable C compiler found in $PATH错误
安装Python2.7出现configure: error: no acceptable C compiler found in $PATH错误 安装步骤: 安装依赖 yum groupinstall ...
- Animation.setFillAfter and Animation.setFillBefore的作用
转:http://blog.csdn.net/yangweigbh/article/details/9788531 setFillAfter(boolean fillAfter) 在Android ...
- CentOS 7 下安装 Nginx(转)
转载自:http://www.linuxidc.com/Linux/2016-09/134907.htm 安装所需环境 Nginx 是 C语言 开发,建议在 Linux 上运行,当然,也可以安装 Wi ...
- [note]What I’ve learnt from working on startups
What I've learnt from working on startups 从失败里学到了什么,六次创业失败. 企业家不是与生俱来的,也是靠学来的. 想的太多,做的太少.
- sql临时表,表变量,CTE,游标使用方法
if OBJECT_ID('groups') is not null drop table groups create table groups ( groupid ), val int null ) ...
- 【C】——const和volatile可以并用吗?
答案是肯定的,可以一起用. 因为很多人误解了const的真正含义,很多初学者认为const修饰的就是常量,而常量不会改变,而既然不会改变,那volatile就没有意义. 但是实际上这正是对const的 ...
- Ubuntu 地址导航栏修改为显示路径及如何恢复原模式?
在Ubuntu中,文件位置默认不是和Windows地址栏一样的(位置项),而是显示是路径名称组合(路径栏),这对于文件路径的获得复制很不方便.比如,获得某个文件德 路径,如果是地址栏,直接复制一下就可 ...
- snapshots On Vmware
快照使用 编辑 如果你创建了多于一个的虚拟机快照,那么,你将有多个还原点可以用于恢复.当你创建了一个快照,那快照些现在可写的在那个点上就变成了只读的.使用in-file delta技术就能创建新文件记 ...
- What is "found.000" ? How to deal with it?
最近在ubuntu系统中发现双系统的win盘中有一些文件夹,名字是“found.000”,甚是疑惑,遂查而记之. found.000文件夹里面的一些后缀名为CHK的文件是你在使用“磁盘碎片整理程序”整 ...