當前位置:成語大全網 - 書法字典 - 如何在字節和字符串之間轉換

如何在字節和字符串之間轉換

在網絡編程中,Socket發送的數據是以字節數組的形式發送的,因此其他類型的數據應該轉換為byte【】類型。

//字符串到字節

string s =“妳好!!";

byte【】b =新字節【1024 * 1024】;

b =系統。text . encoding . ascii . getbytes(s);

//使用系統。當字符串包含中文字符時為text . encoding . utf8 . getbytes(s);

襪子。發送(b);

//字節到字符串

byte【】b 1 =新字節【1024 * 1024 * 2】;

襪子。接收(b 1);

string s1 = System。text . encoding . ascii . getstring(b 1);

//系統。text . encoding . utf8 . getstring(b 1);

註意:

將字節數組轉換為字符串時,由於字節數組包含2M字節,轉換後的字符串s1也將填充2M字符(填充為\0)。

因此,為了避免這個問題,可以使用Receive返回的字節數來確定接收字節的長度。

int length = sock接收(b 1);

string s1 = System。text . encoding . ascii . getstring(b 1,0,length);

//這樣,s1就是byte的實際值。

希望能幫到妳!