将16进制字符串转换为整数输出

原创 2015年07月07日 10:05:19

一个16进制字符串,可能是带负号的,也可能是非法的(g1234),把它转换为10进制整数输出。


public class HexToDecmal {

	public static void main(String[] args) throws Exception {
		// TODO Auto-generated method stub
		System.out.println(toDecmal("-1g"));
	}
	
	public static int toDecmal(String in) throws Exception{
		int len = in.length();
		char firstChar =in.charAt(0);
		boolean flag =true;
		int sum=0;
		int end=0;
		if(firstChar=='-')
		{
			flag=false;    //标志是否为负数
			end=1;
		}
		for(int i=0;len-i-1>=end;i++){
			int n = Character.digit(in.charAt(len-i-1), 16);
			//System.out.println("n="+n);
			if(n==-1)
				throw new Exception("format exception");
			sum += n*(1<<(4*i));
			//System.out.println("sum="+sum);
		}
		if(flag)
			return sum;
		else
			return -sum;
	}

}


MYSQL中HEX、UNHEX函数

1、 首先在Xshell下查看本次实验mysql版本 2、 然后连接到Mysql服务器上   3、 首先我们对UNHEX函数进行测试 HEX函数:将十进制数转化为十六进制数 UNHEX函数:将十六...

面试题--位操作--将十进制数转换为16进制字符串输出

这是一道面试题: 编程实现将十进制数转换为16进制输出,不得使用任何已定义的库函数,比如string,math等。 char * get16String(long num) { int...
  • abilly
  • abilly
  • 2014年04月21日 16:57
  • 2534

输入一个表示十六进制的字符串,转换为十进制的整数输出。

/*********************************************************************************** 将16进制的字符串转换成10进...

Delphi7高级应用开发随书源码

  • 2003年04月30日 00:00
  • 676KB
  • 下载

将由16进制数字组成的字符串转换成与之等价的整形值

     源自《The C Programming Language》P37 pr2-3:      编写函数htoi(s),把由16进制数字组成的字符串(包含可选的前缀0X或0x)转换成与之等价的整...
  • roma823
  • roma823
  • 2011年04月28日 20:24
  • 5599

C语言:将16进制字符串转化为int类型值

将16进制字符串值转换为 in

MySQL 将十六进制转化为十进制

(CAST(0x41 AS UNSIGNED)
  • dyzhen
  • dyzhen
  • 2012年07月06日 11:46
  • 3054

字节数据转换成十六进制字符串

在这篇文章中,我们将讲述一下如何将一个字节数组转换成一个十六进制的字符串。 字节,8个二进制位,而一个十六进制字符0-F,需要四个二进制位进行表示,因此我们可以直接将一个字节拆分成两个部分(前后...

二进制、10进制、16进制整数和字符串转换

十进制转换为二进制代码      ? 1 2 3 4 5 6 7 8 9 10 11 12 13...

2-16进制的随意转换,输入一个整数可以直接输出他的八进制或者十六进制

Problem D Time Limit : 2000/1000ms (Java/Other)   Memory Limit : 65536/32768K (Java/Other) Total S...
  • DSH0106
  • DSH0106
  • 2014年02月19日 20:35
  • 785
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:将16进制字符串转换为整数输出
举报原因:
原因补充:

(最多只允许输入30个字)