Byte陣列轉換成string 的方法積累

2022-02-26 18:09:22 字數 1039 閱讀 2529

.net的加密演算法,返回的都是byte 型別,在存貯起來讓人非常頭疼,最簡單的方法就是把byte轉換成string來存貯,當然如果資料量大的話,另當別論。

所以我就把byte轉換成string的方法做乙個簡單的積累與分析。目前有3種我覺得比較簡單的方案來進行轉化。

1.convert.tobase64string與 convert.frombase64string

此方法簡單實用。轉換成的string包含:26個英文本母的大小寫、+、/、0~9的數字,總共64個字元。一般會在結尾出現「=」。分析其原因很簡單。

原理:用64個字元來描述6bit的二進位制。

方式:把byte資料連在一起,以6bit為單位進行分組,使用64個字元描述6bit資料,如果分組不足6bit,使用「=」補全。

2.自己寫**,使用16進製制字元0~9、a~f來描述資料。

原理:使用16個字元來描述4bit的二進位制。也就是說,乙個byte要使用兩個16進製制字元來進行描述。

方式:對每一byte的前半部分與後半部分分別用字元來描述。

此方法需要自己手動進行書寫,**相當簡單。可以crtl+c ctrl+v拿來就用。

public

static

static

byte stringtobyte(string str)

return bytes;

}

3.使用encoding的編碼自動轉化encoding.getencoding("編碼格式").getstring()和   encoding.getencoding("編碼格式").getbytes()

總結:

推薦使用第一種方法來進行string的轉化,但如果對格式要求時,如自定義機器語言中,不允許出現「+」「/」這種字元時,考慮會用第二種方法。

如果只是轉換成byte資料或者是轉換成string進行記憶體操作時,使用第三種方式是種不錯的選擇。

byte 轉換成String 有問題出現

上篇部落格使用了mget,類似管道的,為了提公升效能 我查了jedis.mget的方法 發現只能傳進去乙個string陣列,返回的結果是乙個list string 所以我就進行了返回的list string 轉換成list,然後就發現出錯了 這個錯誤不是轉換的錯誤,而是乙個byte中是乙個位元組儲存...

int 轉換成byte 數字

byte是1個位元組 所以 位元組型,佔1 位元組,表示8 位正整數,範圍0 255 int是4個位元組 而把int轉換成byte會擷取最後乙個位元組 比如你說的135 轉為2進製應該有4個位元組 然後僅僅要最後乙個位元組 最後乙個位元組的第一位被作為符號位135轉換2進製後為10000111 然後...

怎麼把char 陣列轉換成String?

2009 2 28 23 04 提問者 taxiskycrazy 懸賞分 30 瀏覽次數 3942次 謝謝!問題補充 還有怎麼反過來把string轉成char陣列?樓下的沒有理解我的意思。注意,是整個char陣列。2009 2 28 23 47 最佳答案 public class test stri...