java - 打印十六进制字符串的地址而不是十六进制字符串值

标签 java string forms printing hex

我通过执行以下操作将字节数组转换为字符串

String s = encryptedBytes1.toString();
String gh = convertStringToHex(s);

然后我在屏幕上打印 gh 这是它返回的十六进制形式:

gh:[B@5985910 

这是函数转换

public static String convertStringToHex(String str){
    char[] chars = str.toCharArray();
    StringBuffer hex = new StringBuffer();
    for(int i = 0; i < chars.length; i++){
        hex.append(Integer.toHexString((int)chars[i]));
    }
    return hex.toString();
}

谁能帮我打印十六进制形式字符串吗?

最佳答案

通常,您可以使用以下函数转换字符串和十六进制值(数字):

String hexString1 = "0x20";
Integer integer = Integer.decode(hexString); // is 32
String hexString1 = String.toHexString(integer); // is "20"

现在您需要迭代您的 byteArray/String。

编辑:当您指定问题时,请参阅此答案。我猜这是同样的问题:Converting A String To Hexadecimal In Java

关于java - 打印十六进制字符串的地址而不是十六进制字符串值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23128829/

相关文章:

java - 两个 war 文件之间的通信,无需对上下文根进行硬编码

java - 如何在 JavaFX 8 中使用 AnchorPane 覆盖图表?

Java,小程序 : How to block the activation of paint() before init() finishes it's work

JavaScript 检查值是否存在然后提交表单

java - 使用正则表达式检查文件扩展名

string - Perl:在 excel/csv 文件中查找重复项并用它们编写输出文件

c++ - c++中的字符串模板参数

Python3 字符串编码混淆输出

jQuery - 为什么 $ ('form' ).get(0).submit() 不触发附加的提交处理程序?

javascript - 如何将HTML表单数据存储在本地?