`
wangleide414
  • 浏览: 606489 次
  • 性别: Icon_minigender_1
  • 来自: 西安
社区版块
存档分类
最新评论

java中16进制和字符串和十进制间的转换

阅读更多

最近做这方面的程序,发现网上的没有系统的归纳一下。我现在把我所知道贡献给大家:

// 转化字符串为十六进制编码
public static String toHexString(String str) {
        String result= " ";
        for (int i=0;i <str.length();i ++) {
              int ch = (int)str.charAt(i);
              String s = Integer.toHexString(ch); 
              result = str+ s;
        }
        return result;
}

//转换10进制为16进制

int i=10;

String result=Integer.toHexString(i); //可以得到result为"a";

 

//把字符串转换成16进制。以字符串的形式返回

public static String encode(String str){
     // 根据默认编码获取字节数组
     byte[] bytes=str.getBytes();
     StringBuilder sb=new StringBuilder(bytes.length*2);
      // 将字节数组中每个字节拆解成2位16进制整数
      for(int i=0;i <bytes.length;i++){
             sb.append(hexString.charAt((bytes[i]&0xf0)>> 4));
             sb.append(hexString.charAt((bytes[i]&0x0f)>> 0));
       }
        return sb.toString();
 }

 

 

/*
  * 将16进制数字解码成字符串,适用于所有字符(包括中文)
  */
 public static String decode(String bytes) {
           ByteArrayOutputStream baos=new ByteArrayOutputStream(bytes.length()/2);
             //将每2位16进制整数组装成一个字节
            for(int i=0;i<bytes.length();i+=2) 
                  baos.write((hexString.indexOf(bytes.charAt(i))<<4 |hexString.indexOf(bytes.charAt(i+1))));
             return new String(baos.toByteArray());
 }

分享到:
评论

相关推荐

    java String 与各种进制字符之间的转换

    - `Integer.toHexString()`和`Integer.parseInt(hexStr, 16)`是十六进制字符串与整数之间转换的常用方法。 4. **字符编码与解码**: Java中的`Character`类提供了处理单个字符的方法。例如,可以使用`Character....

    Java实现的进制转换工具类完整示例

    Java实现的进制转换工具类是Java语言中的一种常用工具类,用于实现各种进制之间的转换操作,如二进制、十六进制、字符串、数组等。该工具类主要提供了将字节数组转换为十六进制字符数组或字符串的方法,以及将字符串...

    字符串16进制转10进制

    给定的文件内容中描述的C++代码片段展示了如何将16进制字符串转换为10进制的整数。代码首先定义了一个名为`strHexToInt`的函数,该函数接收一个`char*`类型的字符串作为输入,返回一个`int`类型的数值。在转换过程中...

    16进制数转化成字符串(包括中文)

    java代码,从16进制数直接转化成字符串(包括中文)简单好用

    java实现十六进制字符unicode与中英文转换示例

    总结,这个示例展示了如何在Java中处理Unicode和十六进制字符串的转换,强调了理解字符编码格式和处理过程的重要性。在实际开发中,正确处理字符编码可以避免乱码问题,确保数据的准确性和一致性。同时,开发者应该...

    java中进制转换(二进制,十进制,十六进制)及字节数组与十六进制的转换

    本篇将详细阐述如何在Java中进行二进制、十进制和十六进制之间的转换,以及字节数组与十六进制字符串的相互转换。 一、进制转换 1. **二进制转十进制**:Java中可以使用`Integer.parseInt()`或`Long.parseLong()`...

    字符串转16进制码

    因此,将字符串转换为16进制码的过程实际上就是将字符串中每个字符的编码转换成16进制的形式。 在Python编程语言中,可以使用内置的`hex()`函数或者`ord()`和`format()`函数组合来实现这个转换。例如,对于一个字符...

    Java实现任意进制的转换

    以下是一个通用的示例,它接受十进制数和目标进制,返回一个表示该数值的指定进制字符串: ```java public static String decimalToAnyBase(int decimal, int base) { if (base || base &gt; 36) { throw new ...

    十六进制字符串按位异或运算工具和java位异或运算

    在上述代码中,`Integer.parseInt(hexNumber, 16)`使用了第二个参数16来指定解析的基数为16,从而将十六进制字符串转换为十进制整数。然后,通过`result ^= binaryValue`进行异或运算,将每个十六进制数的结果累加到...

    16进制字符串转10进制

    本主题主要关注如何将16进制字符串转换为10进制数值,这对于编程和数据处理至关重要。16进制(Hexadecimal)是一种逢16进1的计数系统,它使用0-9的数字和A-F的字母(A代表10,B代表11,C代表12,D代表13,E代表14,F...

    Java进制转换方法整理

    十进制转换其他进制 使用方法 返回值 10进制转2进制 Integer.toBinaryString(n) 一个二进制字符串 10进制转8进制 Integer.toOctalString(n) 一个八进制字符串 10进制转16进制 Integer.toHexString(n) 一个...

    android byte字节数组转换十六进制字符串

    在Android开发中,有时我们需要将字节数组(byte array)转换为十六进制字符串,以便于数据存储、传输或调试。这是因为字节数组是二进制数据,而十六进制字符串则是一种人类可读的表示方式。下面我们将详细讨论如何...

    java 二进制数据与16进制字符串相互转化方法

    Java 中,二进制数据和 16 进制字符串是两种常见的数据表示形式,在实际编程过程中,我们经常需要将这两种格式相互转换。本文将详细介绍 Java 中二进制数据与 16 进制字符串相互转换的方法。 二进制数据 在 Java ...

    大数16进制向10进制转换

    总之,大数16进制到10进制的转换是计算机科学中的基本操作,涉及到数字表示、进制转换和大数运算等多个概念。理解和掌握这些知识点对于编写高效、可靠的代码至关重要。在实际应用中,我们需要根据具体情况选择合适的...

    JAVA二进制字节数组字符十六进制BCD编码转换.doc

    在Java编程中,二进制、字节数组、字符、十六进制和BCD(Binary-Coded Decimal,二进制编码的十进制)编码转换是常见的数据处理任务。以下将详细介绍这些概念以及如何在Java中进行相关操作。 1. **二进制与十六进制...

    Java编写的进制转换程序

    例如,要将十六进制字符串`"1F"`转换为十进制整数,可以写成`Integer.parseInt("1F", 16)`。 2. **整数到字符串的转换**:相反,我们可以通过`Integer.toString()`方法将整数转换为字符串。这个方法默认返回十进制...

    JAVA中的进制转换

    本文将深入探讨Java中不同进制之间的转换,包括二进制、八进制、十进制和十六进制。 首先,我们要理解什么是进制。进制是数字系统的基础,它规定了数字的位值和数值的表示方式。比如,我们日常生活中的计数系统是十...

    java自动生成32位16进制ID的3个架包.rar

    3. 在需要生成ID的地方调用`SequentialGenerator.nextLong()`,并将返回的长整型ID转换为16进制字符串。 4. 可选地,如果你的系统是分布式的,利用`Commons Discovery`来确保各个节点的ID生成不冲突。 5. 使用`...

    16进制单精度(32位)浮点型转换器源码

    1. 输入解析:用户输入16进制字符串,程序需要将其转换为32位的整数。 2. 字节序判断:根据用户选择的大端或小端模式,程序需对32位整数进行字节顺序调整。 3. IEEE 754转换:利用IEEE 754的标准公式,将调整后的...

    java 进制转换,二进制 十进制 十六进制 正数 负数的进制等等!.docx

    例如,`Integer.toHexString()`可以将十进制整数转换为十六进制字符串,`Integer.toBinaryString()`用于转换为二进制,而`Integer.toOctalString()`则用于转换为八进制。反之,要将其他进制的字符串转换为十进制,...

Global site tag (gtag.js) - Google Analytics