android字元串轉16進制
⑴ android用代碼怎麼實現漢字和16進制數的轉化
String strInput ="湖北武漢";
StringBuffer output = new StringBuffer();
System.out.println("\""+strInput+ "\" 的utf8編碼:");
for (int i = 0; i < strInput.length(); i++)
{
output.append("\\u" +Integer.toString(strInput.charAt(i), 16));
}
System.out.println(output);
⑵ 怎麼把一個字元串轉換成16進制數據
#include<stdio.h>
intfun(char*s,intn){intr=0;
while(*s){
r*=n;
if(*s>='0'&&*s<='9')r+=*s-'0';
elseif(*s>='A'&&*s<='Z')r+=*s-'A'+10;
elseif(*s>='a'&&*s<='z')r+=*s-'a'+10;
s++;
}
returnr;
}
voidmain(){intx;chars[80];
scanf("%s",s);x=fun(s,16);printf("%xH ",s);//假設字元串中輸入的是十六進制數據
}
⑶ android 字元串轉換16進制後怎麼顯示
您好,希望以下回答能幫助您
Integer.parseInt(String, 16);
如您還有疑問可繼續追問。
⑷ java(android) 怎樣判斷字元串是否可以轉換成對應16進制
直接用try-catch捕獲異常,不管能不能轉換一律轉換,不能轉換的自然會拋出異常被捕獲。
要不然你就用正則表達式macthers匹配一下
⑸ android 字元串轉byte數組
Android 字元串、byte數組與16進制數組間的轉換
<spanstyle="font-family:SimSun;font-size:14px;">//字元串轉換成16進制文字列的方法
publicStringtoHex(Stringstr){
StringhexString="0123456789ABCDEF";
byte[]bytes=str.getBytes();
StringBuilderhex=newStringBuilder(bytes.length*2);
for(inti=0;i<bytes.length;i++){
hex.append(hexString.charAt((bytes[i]&0xf0)>>4));//作用同n/16
hex.append(hexString.charAt((bytes[i]&0x0f)>>0));//作用同n
hex.append('');//中間用空格隔開
}
returnhex.toString();
}
//將16進制數組轉換為字元串
publicstaticStringdecode(Stringbytes){
StringhexString="0123456789ABCDEF";
ByteArrayOutputStreambaos=newByteArrayOutputStream(bytes.length()/2);
//將每2位16進制整數組裝成一個位元組
//for(inti=0;i<bytes.length();i+=2)
//baos.write((hexString.indexOf(bytes.charAt(i))<<4|hexString.indexOf(bytes.charAt(i+1))));
//將每3位(第3位為空格)中的前2位16進制整數組裝成一個位元組
for(inti=0;i<bytes.length();i+=3){
baos.write((hexString.indexOf(bytes.charAt(i))<<4|hexString.indexOf(bytes.charAt(i+1))));
}
returnnewString(baos.toByteArray());
}</span>
詳細
⑹ android如何將字元串轉換成16進制數
Integer.parseInt(String, 16);
⑺ 安卓開發中如何將一下一串信息,轉變成16進制信息
參考這個:
public class Test {
public static void main(String[] args) {
byte[] b = HexString2Bytes("AA020155");
String s = Bytes2HexString(b);
System.out.println(s);
}
/**
* 將兩個ASCII字元合成一個位元組;
* 如:"EF"--> 0xEF
* @param src0 byte
* @param src1 byte
* @return byte
*/
public static byte uniteBytes(byte src0, byte src1) {
byte _b0 = Byte.decode("0x" + new String(new byte[]{src0})).byteValue();
_b0 = (byte)(_b0 << 4);
byte _b1 = Byte.decode("0x" + new String(new byte[]{src1})).byteValue();
byte ret = (byte)(_b0 ^ _b1);
return ret;
}
/**
* 將指定字元串src,以每兩個字元分割轉換為16進制形式
* 如:"2B44EFD9" –> byte[]{0x2B, 0×44, 0xEF, 0xD9}
* @param src String
* @return byte[]
*/
public static byte[] HexString2Bytes(String src){
byte[] ret = new byte[src.length()/2];
byte[] tmp = src.getBytes();
for(int i=0; i< tmp.length/2; i++){
ret[i] = uniteBytes(tmp[i*2], tmp[i*2+1]);
}
return ret;
}
/**
* 將指定byte數組以16進制的形式列印到控制台
* @param hint String
* @param b byte[]
* @return void
*/
public static void printHexString(String hint, byte[] b) {
System.out.print(hint);
for (int i = 0; i < b.length; i++) {
String hex = Integer.toHexString(b[i] & 0xFF);
if (hex.length() == 1) {
hex = '0' + hex;
}
System.out.print(hex.toUpperCase() + " ");
}
System.out.println("");
}
/**
*
* @param b byte[]
* @return String
*/
public static String Bytes2HexString(byte[] b) {
String ret = "";
for (int i = 0; i < b.length; i++) {
String hex = Integer.toHexString(b[i] & 0xFF);
if (hex.length() == 1) {
hex = '0' + hex;
}
ret += hex.toUpperCase();
}
return ret;
}
}
⑻ android字元串轉換成16進制怎麼轉
android字元串轉換成16進制,參考如下內容:
/**
* 字元串轉換成十六進制字元串
* @param String str 待轉換的ASCII字元串
* @return String 每個Byte之間空格分隔,如: [61 6C 6B]
*/
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]);
sb.append(' ');
}
return sb.toString().trim();
}
⑼ android用代碼怎麼實現漢字和16進制數的轉化
:String strInput ="湖北武漢"; StringBuffer output = new StringBuffer(); System.out.println("\""+strInput+ "\" 的utf8編碼:")