關於 int 與 byte 的相互轉換,mattias sjogren 介紹了3種方法。請參見 《將integer轉換成byte array》。其實應該還有不少方法。在這裡,我歸納了包括mattias sjogren在內的4種方法。
int 與 byte 的相互轉換
沐楓網誌
1. 最普通的方法
2. 使用 bitconverter (強力推薦)
3. unsafe** (雖然簡單,但需要更改編譯選項)
unsafe
4. 使用marshal類intptr ptr
=marshal.allochglobal(
4);
//要分配非託管記憶體
byte b=
newbyte[4];
//從byte 到 int
marshal.copy(b,
0, ptr, 4);
intu
=marshal.readint32(ptr);
//從int 到byte
marshal.writeint32(ptr, u);
marshal.copy(ptr,b,0,
4);marshal.freehglobal(ptr);
//最後要記得釋放記憶體
使用第4種看起來比較麻煩,實際上,如果想把結構(struct)型別轉換成byte,則第4種是相當方便的。例如:
intlen
=marshal.sizeof(
typeof
(mystruct));
mystruct o;
byte
arr
=new
byte
[len];//;
intptr ptr
=marshal.allochglobal(len);
tryfinally
return
o;
int 與 byte 的相互轉換
int 與 byte 的相互轉換 1.最普通的方法 從byte 到 uint b new byte u uint b 0 b 1 8 b 2 16 b 3 24 從int 到 byte b 0 byte u b 1 byte u 8 b 2 byte u 16 b 3 byte u 24 2.使用 ...
byte 與string相互轉換
c 中byte與string相互轉換及string與sql server中nvarchar的轉換問題 最近在寫專業實踐 資料庫加密,找出以前寫的md5 des程式,編成兩個動態鏈結庫md5.dll des.dll,在這把我遇到的問題分享下 1 byte與string的相互轉換 首先在c 中strin...
bitmapimage與byte 相互轉換
wpf image byte wpf bitmapimage 有時要實現bitmapimage與byte相互轉換,這裡實現兩個靜態方法,直接呼叫即可。byte轉換為bitmapimage public static bitmapimage bytearraytobitmapimage byte by...