C# 十进制与十六进制互转
1.从十六进制转换为十进制
/// <summary>
/// 十六进制转换到十进制
/// </summary>
/// <param name="hex"></param>
/// <returns></returns>
public static string Hex2Ten(string hex)
{
int ten = ;
for (int i = , j = hex.Length - ; i < hex.Length; i++)
{
ten += HexChar2Value(hex.Substring(i, )) * ((int)Math.Pow(, j));
j--;
}
return ten.ToString();
} public static int HexChar2Value(string hexChar)
{
switch (hexChar)
{
case "":
case "":
case "":
case "":
case "":
case "":
case "":
case "":
case "":
case "":
return Convert.ToInt32(hexChar);
case "a":
case "A":
return ;
case "b":
case "B":
return ;
case "c":
case "C":
return ;
case "d":
case "D":
return ;
case "e":
case "E":
return ;
case "f":
case "F":
return ;
default:
return ;
}
}
this.txtStartShi.Text = Hex2Ten(this.txtStartSN.Text.Trim().Substring(, ));
this.txtEndShi.Text = Hex2Ten(this.txtEndSN.Text.Trim().Substring(, ));
2.从十进制转换为十六进制
/// <summary>
/// 从十进制转换到十六进制
/// </summary>
/// <param name="ten"></param>
/// <returns></returns>
public static string Ten2Hex(string ten)
{
ulong tenValue = Convert.ToUInt64(ten);
ulong divValue, resValue;
string hex = "";
do
{
//divValue = (ulong)Math.Floor(tenValue / 16); divValue = (ulong)Math.Floor((decimal)(tenValue / )); resValue = tenValue % ;
hex = tenValue2Char(resValue) + hex;
tenValue = divValue;
}
while (tenValue >= );
if (tenValue != )
hex = tenValue2Char(tenValue) + hex;
return hex;
} public static string tenValue2Char(ulong ten)
{
switch (ten)
{
case :
case :
case :
case :
case :
case :
case :
case :
case :
case :
return ten.ToString();
case :
return "A";
case :
return "B";
case :
return "C";
case :
return "D";
case :
return "E";
case :
return "F";
default:
return "";
}
}
int StartSN = Convert.ToInt32(this.txtStartShi.Text.Trim());
int EndSN = Convert.ToInt32(this.txtEndShi.Text.Trim()); for (int i = ; i < EndSN - StartSN + ; i++)
{
listBox1.Items.Add("" + Ten2Hex((Convert.ToDouble(this.txtStartShi.Text) + i).ToString()));
}
/// <summary>
/// 10进制转34进制
/// </summary>
/// <param name="parameter"></param>
/// <returns></returns>
public static string Ten2ThirtyFour(int parameter)
{
string[] radix = { "", "", "", "", "", "", "", "", "", "", "A", "B", "C", "D",
"E", "F", "G", "H", "J", "K", "L", "M", "N", "P", "Q", "R", "S", "T",
"U", "V", "W", "X", "Y", "Z" };
string result = "";
int len = ;
int remainder = ;
len = parameter / ;
remainder = parameter % ;
result = radix[remainder];
while (len > )
{
remainder = len % ;
len = len / ;
result = radix[remainder] + result;
}
return result;
}
C# 十进制与十六进制互转的更多相关文章
- 【转】C# 二进制,十进制,十六进制 互转
//十进制转二进制 Console.WriteLine(Convert.ToString(69, 2)); //十进制转八进制 Console.WriteLine(Convert.ToString(6 ...
- Delphi十进制和十六进制互转
Delphi 自带函数 IntToHex 功能说明:该函数用于将“十进制”转换成“十六进制”.该函数有二个参数.第一个参数为要转换的十进制数据,第二个参数是指定使用多少位来显示十六进制数据. 参考实例 ...
- python IPv6 十进制和十六进制互转
IPv6 转 十进制: #!/usr/bin/python # -*- coding: UTF-8 -*- import re def ipv62dec(ipv6): if checkipv6(ipv ...
- ORACLE十进制与十六进制的转换
十进制与十六进制的转换 十进制-->十六进制 select to_char(100,'XX') from dual; 十六进制-->十进制select to_number('7D','XX ...
- SQL十进制和十六进制相互转换
CREATE FUNCTION ufn_ConvertInt2Hex ( @Num BIGINT ) ) AS BEGIN /************************************* ...
- C# 二进制,十进制,十六进制
//十进制转二进制 Console.WriteLine(Convert.ToString(69, 2)); //十进制转八进制 Console.WriteLine(Convert.ToString(6 ...
- C# 十进制和十六进制转换
转至:http://www.cnblogs.com/fwind/archive/2012/04/13/2445380.html 在C#中,十进制和十六进制转换非常简单,方法如下: 十进制转为十六进制: ...
- Java中二进制、十进制、十六进制及ASCII码与String及字节数组与十六进制之间的转换
public class DigitalTrans { /** * 数字字符串转ASCII码字符串 * * @param String * 字符串 * @return ASCII字符串 */ publ ...
- Oracle中的二进制、八进制、十进制、十六进制相互转换函数
原文:Oracle中的二进制.八进制.十进制.十六进制相互转换函数 Oracle中的二进制.八进制.十进制.十六进制相互转换函数 今天在网上看到一篇关于在oracle中对各种进制数进行转换的帖子, ...
随机推荐
- HorizontalScrollView的配置
package com.exmple.jinritoutiao; import java.util.ArrayList;import java.util.Calendar;import java.ut ...
- (栈的应用5.2.2)POJ 2106 Boolean Expressions(表达式求值)
/* * POJ_2106.cpp * * Created on: 2013年10月30日 * Author: Administrator */ #include <iostream> # ...
- HDU4288:Coder(线段树单点更新版 && 暴力版)
Problem Description In mathematics and computer science, an algorithm describes a set of procedures ...
- 【python cookbook】【字符串与文本】5.查找和替换文本
问题:对字符串中的文本做查找和替换 解决方案: 1.对于简单模式:str.replace(old, new[, max]) 2.复杂模式:使用re模块中的re.sub(匹配的模式, newstring ...
- 安装LAMP
1.首先打开命令行,获得最新的软件包 sudo apt-get install update 2.安装MySQL数据库 sudo apt-get install mysql-server mysql- ...
- [转]Win7下安装配置sharepoint server 2010
转自:http://blog.sina.com.cn/s/blog_5d93d7aa010151lp.html 要开发SharePoint 2010应用程序,开发人员必须构建一个SharePoint ...
- WinCE Show App Icon
找个图片,例如背景透明的jpg或png,上http://www.pic2icon.com/smartphone_wince_icon_generator.php这个网站转换下. 在项目属性中,设为图标 ...
- CentOS 7安装Gnome GUI 图形界面
当你安装centos服务器版本的时候,系统默认是不会安装 CentOS 的图形界面程序的,比如:gnome或者kde, 那么如果你想在图形界面下工作的话,可以手动来安装CentOS Gnome GUI ...
- 2>&1 的用法说明
经常关注linux脚本的人,一定看到过 2>&1 这样的用法,最初一定不明白其中的含义以及为什么是这样的一种组合.昨天偶然间再次看到了这个 2>&1 的写法,遂下决心搞明白 ...
- jquery中的节点的操作
节点的操作 Dom 文档对象 模型 解决 一.插入节点 Append() 在每个匹配的元素中追加内容 Var $li_1= “<li></li>”; Var $li_2 = ...