java代碼16進(jìn)制轉(zhuǎn)換的簡(jiǎn)單介紹
java中如何將byte[]里面的數(shù)據(jù)轉(zhuǎn)換成十六進(jìn)制?
方法如下:
/* *
* Convert byte[] to hex string.這里我們可以將byte轉(zhuǎn)換成int,然后利用Integer.toHexString(int)
*來(lái)轉(zhuǎn)換成16進(jìn)制字符串。
* @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[]轉(zhuǎn)化成16進(jìn)制字符串,
Java是一門面向?qū)ο缶幊陶Z(yǔ)言,不僅吸收了C++語(yǔ)言的各種優(yōu)點(diǎn),還摒棄了C++里難以理解的多繼承、指針等概念,因此Java語(yǔ)言具有功能強(qiáng)大和簡(jiǎn)單易用兩個(gè)特征。Java語(yǔ)言作為靜態(tài)面向?qū)ο缶幊陶Z(yǔ)言的代表,極好地實(shí)現(xiàn)了面向?qū)ο罄碚摚试S程序員以優(yōu)雅的思維方式進(jìn)行復(fù)雜的編程。
java 16進(jìn)制byte數(shù)組 轉(zhuǎn)化成UTF-8格式字符串
一個(gè)16進(jìn)制的byte數(shù)組轉(zhuǎn)化成utf-8格式的字符串的方法有以下幾種:
使用C語(yǔ)言,可以定義一個(gè)函數(shù),將每個(gè)byte分成高4位和低4位,然后分別轉(zhuǎn)換成對(duì)應(yīng)的16進(jìn)制字符,再拼接起來(lái)。
使用Java語(yǔ)言,可以使用Integer.toHexString()方法,將每個(gè)byte轉(zhuǎn)換成兩個(gè)16進(jìn)制字符,再拼接起來(lái)。
使用Python語(yǔ)言,可以使用binascii.hexlify()方法,將byte數(shù)組轉(zhuǎn)換成16進(jìn)制字符串。
: 十六進(jìn)制元素?cái)?shù)組與字符串相互轉(zhuǎn)換(C語(yǔ)言)_c語(yǔ)言16進(jìn)制數(shù)組轉(zhuǎn)換字符串_wangqingchuan92的博客-CSDN博客 : java中byte數(shù)組與十六進(jìn)制字符串相互轉(zhuǎn)換 - 騰訊云開(kāi)發(fā)者社區(qū)-騰訊云 : python - How to convert a byte array to a hex string in Python? - Stack Overflow
java中如何把十六進(jìn)制轉(zhuǎn)為十進(jìn)制
分類: 電腦/網(wǎng)絡(luò) 程序設(shè)計(jì) 其他編程語(yǔ)言
問(wèn)題描述:
我用的java1.4 請(qǐng)問(wèn)如何將十六進(jìn)制整形數(shù)轉(zhuǎn)化為十進(jìn)制的
解析:
import java.awt.*;
public class d2x extends Frame
{
int decimalValue= 0;
String baseXValue = new String("0");
TextField dDisplay,xDisplay;
d2x constructor
d2x()
{
super("Decimal Converter");set the title of the frame
MenuBar mb = new MenuBar();
Button d2Binary = new Button("Binary");
Button d2Octal = new Button("Octal");
Button d2Hex = new Button("Hex");
Button d2Base36 = new Button("Base36");
Panel p1 = new Panel();
Panel p2 = new Panel();
Panel p3 = new Panel();
add a simple menu
Menu m = new Menu("Application");
m.add(new CheckboxMenuItem("Base 36 Active"));
m.add(new MenuItem("Exit"));
add menu to menubar
mb.add(m);
setMenuBar(mb);install this menu bar in the frame
Add buttons to their own panel
p3.setLayout(new FlowLayout());
p3.add(d2Binary);
p3.add(d2Octal);
p3.add(d2Hex);
p3.add(d2Base36);
Add text fields
Label dLabel = new Label("Enter Deecimal: ");
Label xLabel = new Label("Converted Value: ");
dDisplay = new TextField(Integer.toString(decimalValue),7);
xDisplay = new TextField(baseXValue,32);
xDisplay.setEditable(false);
p1.setLayout(new FlowLayout(FlowLayout.LEFT));
p2.setLayout(new FlowLayout(FlowLayout.LEFT));
p1.add(dLabel);
p1.add(dDisplay);
p2.add(xLabel);
p2.add(xDisplay);
Add the panels
add("North",p1);
add("Center",p2);
add("South",p3);
}end d2x constructor
public void start()
{
resize(400,150);
show();
}
public void updateXDisplay()
{
xDisplay.setText(baseXValue);
}
public boolean handleEvent(Event evt)
{
if (evt.target instanceof MenuItem)
{
if ("Exit".equals(((MenuItem)evt.target).getLabel()))
{
hide();
dispose();
System.exit(0);
return false;
}
return true;
}
else if(evt.target instanceof Button)
{
String whick = ((Button)evt.target).getLabel();
if (whick.equals("Binary"))
{
decimalValue = Integer.parseInt(dDisplay.getText());
baseXValue = Integer.toString(decimalValue,2);
}
if (whick.equals("Octal"))
{
decimalValue = Integer.parseInt(dDisplay.getText());
baseXValue = Integer.toString(decimalValue,8);
}
if (whick.equals("Hex"))
{
decimalValue = Integer.parseInt(dDisplay.getText());
baseXValue = Integer.toString(decimalValue,16);
}
if (whick.equals("36"))
{
decimalValue = Integer.parseInt(dDisplay.getText());
baseXValue = Integer.toString(decimalValue,36);
}
updateXDisplay();
return true;
}
return false;
}
public static void main(String args[])
{
d2x m = new d2x();
m.start();
}
}
上一篇:java代碼行數(shù)怎么顯示 java 代碼行數(shù)
欄 目:Java編程
下一篇:沒(méi)有了
本文標(biāo)題:java代碼16進(jìn)制轉(zhuǎn)換的簡(jiǎn)單介紹
本文地址:http://www.jygsgssxh.com/a1/Javabiancheng/17284.html
您可能感興趣的文章
- 04-06java代碼行數(shù)怎么顯示 java 代碼行數(shù)
 - 04-06下載文件的java代碼 下載文件的java代碼是什么
 - 04-06java實(shí)現(xiàn)算數(shù)異常代碼 java算數(shù)測(cè)試代碼
 - 04-06java24小時(shí)正則代碼的簡(jiǎn)單介紹
 - 04-06java時(shí)間計(jì)算代碼 java計(jì)算時(shí)間間隔
 - 04-05java代碼可靠性 java代碼性能測(cè)試
 - 04-05java安全退出代碼 java退出按鈕的代碼
 - 04-05刪除線性表的代碼java 線性表刪除操作數(shù)據(jù)結(jié)構(gòu)的算法實(shí)現(xiàn)
 - 04-05java項(xiàng)目完整代碼 java項(xiàng)目 代碼結(jié)構(gòu)層次
 - 04-05Java七夕代碼照片墻 java編程代碼圖片
 


閱讀排行
- 1C語(yǔ)言 while語(yǔ)句的用法詳解
 - 2java 實(shí)現(xiàn)簡(jiǎn)單圣誕樹(shù)的示例代碼(圣誕
 - 3利用C語(yǔ)言實(shí)現(xiàn)“百馬百擔(dān)”問(wèn)題方法
 - 4C語(yǔ)言中計(jì)算正弦的相關(guān)函數(shù)總結(jié)
 - 5c語(yǔ)言計(jì)算三角形面積代碼
 - 6什么是 WSH(腳本宿主)的詳細(xì)解釋
 - 7C++ 中隨機(jī)函數(shù)random函數(shù)的使用方法
 - 8正則表達(dá)式匹配各種特殊字符
 - 9C語(yǔ)言十進(jìn)制轉(zhuǎn)二進(jìn)制代碼實(shí)例
 - 10C語(yǔ)言查找數(shù)組里數(shù)字重復(fù)次數(shù)的方法
 
本欄相關(guān)
- 04-06java代碼16進(jìn)制轉(zhuǎn)換的簡(jiǎn)單介紹
 - 04-06java代碼行數(shù)怎么顯示 java 代碼行數(shù)
 - 04-06下載文件的java代碼 下載文件的java代
 - 04-06java實(shí)現(xiàn)算數(shù)異常代碼 java算數(shù)測(cè)試代
 - 04-06java24小時(shí)正則代碼的簡(jiǎn)單介紹
 - 04-06java時(shí)間計(jì)算代碼 java計(jì)算時(shí)間間隔
 - 04-05java代碼可靠性 java代碼性能測(cè)試
 - 04-05java安全退出代碼 java退出按鈕的代碼
 - 04-05刪除線性表的代碼java 線性表刪除操作
 - 04-05java項(xiàng)目完整代碼 java項(xiàng)目 代碼結(jié)構(gòu)層
 
隨機(jī)閱讀
- 01-10k均值算法c++語(yǔ)言實(shí)現(xiàn)代碼
 - 01-10phpcms轉(zhuǎn)移到虛擬空間的詳細(xì)步驟
 - 01-10通過(guò)先序遍歷和中序遍歷后的序列還
 - 08-05dede:list及dede:arclist調(diào)用系統(tǒng)變量和自
 - 01-10Linux編程實(shí)現(xiàn)制作文件的ed2k鏈
 - 01-10C程序讀取鍵盤碼的方法
 - 01-10Linux網(wǎng)絡(luò)編程之基于UDP實(shí)現(xiàn)可靠的文件
 - 01-10C++實(shí)現(xiàn)新年賀卡程序
 - 01-10跟我學(xué)Java Swing之游戲設(shè)計(jì)(2)
 - 01-11Scala基礎(chǔ)簡(jiǎn)介及代碼示例
 


