⑴ 用java将十进制转换成十六进制
1、用Integer.toHexString方法即可将十进制装成十六进制。
package com.test;
public class Test {
public static void main(String[] args) {
int i = 123;
System.out.println(Integer.toHexString(i));
}
}
⑵ java 字符串转十六进制,例如输入010216,转换后是0x01,0x020x10,就是每两位的去转请大侠指教
public static String cvtStr2Hex(String str) {
if (str == null)
return "";
StringBuilder sb = new StringBuilder("");
for (int i = 0; i < str.length() / 2; i ++) {
String sub = str.substring(i*2, i*2 + 2);
sb.append("0x"清槐 + sub.toUpperCase() + " ");
}
// 转答禅友换的时候一定注意将自己的文件编码改袭前成GBK
return sb.toString();
}
⑶ java字符串转16进制
1、写转换函数是必须的,目前Jdk中无现有类。
2、在不同的字符编码当中,汉字的对应的数值或者说编码值不一样,像GBK、Unicode肯定是不一样的。以Java默认的Unicode为例说明问题。
3、 一,得到字符串,
二,遍历每个字符,用char来接收,实为int值,或直接用int也可以。
三,Integer.toHexString(每个字符对应的int值);
四,前缀加个“0x”就可以了。
4、如果是其它类型的话,找到对应的字符和数值对应表就可以了。
不知可否解决问题了。
⑷ 怎么把字符串转化为十六进制字符串 java
思路:用一个初始化为0~9~a~f的字符串数组,也就是一个十六进制对应表,用这个对应表即可算出一个十六进制字符串的数值。
方法如下:
public static String str2HexStr(String str) {
char[] chars = "0123456789ABCDEF".toCharArray();
StringBuilder sb = new StringBuilder("");
byte[] bs = str.getBytes();
int bit;
for (int i = 0; i < bs.length; i++) {
bit = (bs[i] & 0x0f0) >> 4;
sb.append(chars[bit]);
bit = bs[i] & 0x0f; //位于运算
sb.append(chars[bit]); //进行字符串的拼接
}
return sb.toString();
}
调用方法如下:
String str = str2HexStr("asbd");
⑸ java字符串转换为十六进制数组
字符串作为函数change的参数inputStr
byte[] change(String inputStr) {
byte[] result = new byte[inputStr.length() / 2];
for (int i = 0; i < inputStr.length() / 2; ++i)
result[i] = (byte)(Integer.parseInt(inputStr.substring(i * 2, i * 2 +2), 16) & 0xff);
return result;
}
⑹ JAVA:string类型转换int(16进制)
使用旦枯AT%IPSEND="XXXX"指令,但只模巧洞能作为字符发送,直接发送十宽巧六进制。
⑺ java中如何将byte[]里面的数据转换成十六进制
方法如下:
/* *
* Convert byte[] to hex string.这里我们可以将byte转冲脊换成int,然后利用Integer.toHexString(int)
*来转换成16进制字符散悔渗串。
* @param src byte[] data
* @return hex string
*/
public static String bytesToHexString(byte[] src){
StringBuilder stringBuilder = new StringBuilder("");
if (src == null || src.length <= 0) {
return null;
}
for (int i = 0; i < src.length; i++) {
int v = src[i] & 0xFF;
String hv = Integer.toHexString(v);
if (hv.length() < 2) {
stringBuilder.append(0);
}
stringBuilder.append(hv);
}
return stringBuilder.toString();
}
此方法能将byte[]转化成16进制字符串,
⑻ Java 16进制字符串转化成十六进制数字
没懂啥意思,可以先将字符串转化为整型,后面有需要了,再将整型转化为16进制的数字
intparseInt=Integer.parseInt("cc",16);
System.out.println(parseInt);
StringhexString=Integer.toHexString(parseInt);
System.out.println(hexString);
⑼ java中如何将字符串转16位输出、、。例如“aa”,"0000 0000 0000 0000"按这样的方式输出
先要以正确的编码把字符串转为字节串,在把字节串转为16进制编码
public class Test {
public static void main(String[] args) {
try{
System.out.println(toHex("hello world","GBK"));
}catch (UnsupportedEncodingException e){
e.printStackTrace();
}
}
static public String toHex(String text,String enc) throws UnsupportedEncodingException{
byte B[]=text.getBytes(enc);
StringBuilder buf=new StringBuilder();
for(byte b:B){
buf.append(Integer.toHexString(b&0xff));
}
return buf.toString();
}
}
==========
68656c6c6f20776f726c64