Mac地址转换成long长整型
Mac地址转换成long长整型
using System;
using System.Collections.Generic;
using System.IO;
using System.Text;
using System.Xml;
using System.Xml.Serialization;
namespace Test
{
class Program
{
static void Main(string[] args)
{
Console.WriteLine("第一种方式");
//1、将MAC转为长整形:
string vv = "00-26-2D-F2-5C-28".Replace("-", "");
long valuetolong = long.Parse(vv, System.Globalization.NumberStyles.HexNumber);
Console.WriteLine(valuetolong.ToString());
//2、解析长整形的数据使其转换为MAC;
string valuetostr = valuetolong.ToString("X2");
valuetostr = valuetostr.PadLeft(12, '0');
List<string> listArr = new List<string>();
for (var i = 0; i <= 11; i++)
{
listArr.Add(valuetostr[i].ToString());
if (i < 11 && i % 2 == 1)
{
listArr.Add("-");
}
}
valuetostr = string.Join("", listArr.ToArray());
Console.WriteLine("第二种方式");//这种方式参考https://zhidao.baidu.com/question/1430800143352309939.html
var f1 = Converter.Str2Long("00-26-2D-F2-5C-28");
Console.WriteLine(f1);
Console.WriteLine(f1.ToString("X2"));
var f2 = Converter.Long2Str(f1);
Console.WriteLine(f2);
Console.WriteLine(valuetostr);
Console.Read();
}
private void Form1_Load(object sender, EventArgs e)
{
//此处的 version="1.0" encoding="UTF-8", 在生成的时候一定要有引号,不然会抛出异常
string info = @"<?xml version=""1.0"" encoding=""UTF-8"" ?><ERRORS><ERROR><MSGID>2011323102411&1595489505</MSGID></ERROR><ERROR><MSGID>2011323102411&1396395659</MSGID></ERROR></ERRORS>";
XmlDocument doc = new XmlDocument();
XmlTextReader reader = new XmlTextReader(info, XmlNodeType.Document, null);
while (reader.Read())
{
if (reader.NodeType == XmlNodeType.Element)//判断节点类型为Element
{
//判断节点为MSGID
if (reader.Name == "MSGID")
{
//如果节点为MSGID,继续读下一个节点,即读取MSGID节中电话号码
reader.Read();
//如果节点类型是节点的文本内容
if (XmlNodeType.Text == reader.NodeType)
{
//读取电话号码
// this.richTextBox1.Text += reader.Value + "/r/n";
}
}
}
}
}
}
public class Converter
{
private static String keys = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ";
private static int exponent = keys.Length;
public static string Long2Str(long value)
{
string result = string.Empty;
do
{
long index = value % exponent;
result = keys[(int)index] + result;
value = (value - index) / exponent;
}
while (value > 0);
result = result.PadLeft(12, '0');
List<string> listArr = new List<string>();
for (var i = 0; i <= 11; i++)
{
listArr.Add(result[i].ToString());
if (i < 11 && i % 2 == 1)
{
listArr.Add("-");
}
}
return string.Join("", listArr.ToArray());
}
public static long Str2Long(string value)
{
value = value.Replace("-", "");
long result = 0;
for (int i = 0; i < value.Length; i++)
{
int x = value.Length - i - 1;
result += keys.IndexOf(value[i]) * Pow(exponent, x);
}
return result;
}
/// <summary>
/// 一个数据的N次方
/// </summary>
/// <param name="x"></param>
/// <returns></returns>
private static long Pow(long baseNo, long x)
{
long value = 1;
while (x > 0)
{
value = value * baseNo;
x--;
}
return value;
}
}
}
原文链接:https://zhidao.baidu.com/question/1430800143352309939.html
Mac地址转换成long长整型的更多相关文章
- Mac地址转换成long长整型 2
数据之间的转换可以使用 System.Convert Mac地址转换成long长整型 /// <summary> /// 解析长整形的数据使其转换为macID /// </sum ...
- IP地址转换32为长整型
Programming Question: Convert an IPv4 address in the format of null-terminated C string into a 32-bi ...
- Python基础:数值(布尔型、整型、长整型、浮点型、复数)
一.概述 Python中的 数值类型(Numeric Types)共有5种:布尔型(bool).整型(int).长整型(long).浮点型(float)和复数(complex). 数值类型支持的主要操 ...
- Java把长整型时间转成字符串日期
数据库里存放的是timestamp格式,前端取得后是这种:1436255550710长整型时间截转换成"2015-07-07"这种格式呢? import java.io.IOExc ...
- [转]字符型IP地址转换成数字IP的SQL函数
使用SQL函数可以实现许多的功能,下面为您介绍的是字符型IP地址转换成数字IP的SQL函数示例,供您参考,希望对您学习SQL函数能够有所帮助. /**//*--调用示例 sele ...
- JAVA 长整型转换为IP地址的方法
JAVA 长整型转换为IP地址的方法 代码例如以下: /** * 整型解析为IP地址 * @param num * @return */ public static String int2iP(Lon ...
- javascript没有长整型
记录一下前几天踩坑的经历. 背景:一个项目某一版之后很多用easyui的表格控件treegrid渲染的表格都显示不出来了 奇怪的地方主要有以下几点: 项目在测试环境才会这样,在本机能够正常运行,多次重 ...
- 整型,长整型,无符号整型等 大端和小端(Big endian and Little endian)
一.大端和小端的问题 对于整型.长整型.无符号整型等数据类型,Big endian 认为第一个字节是最高位字节(按照从低地址到高地址的顺序存放数据的高位字节到低位字节):而 Little endian ...
- python基础知识2——基本的数据类型——整型,长整型,浮点型,字符串
磨人的小妖精们啊!终于可以归置下自己的大脑啦,在这里我要把--整型,长整型,浮点型,字符串,列表,元组,字典,集合,这几个知识点特别多的东西,统一的捯饬捯饬,不然一直脑袋里面乱乱的. 对于Python ...
随机推荐
- Vue指令之`v-text`和`v-html`
v-text: 没有加载闪烁问题,它会覆盖元素中原本的内容,但是插值表达式,只会替换自己的这个占位符,不会把 整个元素的内容清空. v-html: 使用v-html可以把标签元素也能显示在元素上 &l ...
- Nuget & VS Plugin
VS Plugin vsCode:https://marketplace.visualstudio.com/vscode vs:https://marketplace.visualstudio.com ...
- Vue框架之侦听器与生命周期
一.计算属性computed和侦听器(watch) 侦听的是单个属性 watch:{ 数据属性的名字:function(value){ }, 数据属性的名字2:function(value){ } } ...
- python之random、time与sys模块
一.random模块 import random # float型 print(random.random()) #取0-1之间的随机小数 print(random.uniform(n,m)) #取 ...
- 用ffserver实现rtsp服务器的实验笔记
参考:https://blog.csdn.net/hoyjam1/article/details/51281679 建议配置文件:/etc/config/ffserver.conf Port 1053 ...
- 工程代码不编译src的java目录下的xml文件问题及解决
IDEA的maven项目中,默认源代码目录下(src/main/java目录)的xml等资源文件并不会在编译的时候一块打包进classes文件夹,而是直接舍弃掉.如果使用的是Eclipse,Eclip ...
- Multiple inheritance in Go
原文:http://golangtutorials.blogspot.com/2011/06/multiple-inheritance-in-go.html --------------------- ...
- 0017SpringBoot注册Servlet三大组件(Servlet、Filter、Listener)
由于SpringBoot默认是以jar包的形式启动嵌入式servlet容器来启动SpringBoot的web应用,所以没有web.xml文件,那么如何配置Servlet.Filter.Listener ...
- TOMCAT 请求HTTP原理
一.Tomcat是什么?Tomcat是一个Web应用服务器,同时也是一个Servlet/JSP容器.Tomcat作为Servlet容器,负责处理客户端请求,把请求传送给Servlet,并将Servle ...
- PHP爬虫之queryList
根据queryList 自己花了一个下午的时间写了一个爬星座数据的类,完全手写.附上代码 <?php require '../vendor/autoload.php'; use QL\Query ...