91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

C# 用什么方法將BitConverter.ToString產生字符串再轉換回去

發布時間:2020-09-20 10:22:13 來源:腳本之家 閱讀:193 作者:森大科技 欄目:編程語言

本文介紹了C# 用什么方法將BitConverter.ToString產生字符串再轉換回去,分享給大家,具體如下:

byte[]  bytTemp  =  System.Text.Encoding.Default.GetBytes("String");  
  string  str  =  System.BitConverter.ToString(bytTemp);  
  Console.WriteLine(str);  
  
  string[]  strSplit  =  str.Split('-');  
  byte[]  bytTemp2  =  new  byte[strSplit.Length];  
  for  (int  i  =  0;  i  <  strSplit.Length;  i++)  
      bytTemp2[i]  =  byte.Parse(strSplit[i],  System.Globalization.NumberStyles.AllowHexSpecifier);  
  string  str2  =  System.Text.Encoding.Default.GetString(bytTemp2);  
  Console.WriteLine(str2);

 c#bitconverter.ToString轉換為十六進制字符串

我使用 BitConverter.ToString(bytes)將字符串轉換為十六進制字符串,我將其進一步轉換為整數或浮點數。

但是輸入流由0組成,表明字節值為0.所以假設我有一個整數,它由2個字節的輸入表示,從位置x開始,第一個由 EE 組成,而第二個字節為 00 。現在當我使用 BitConverter.ToString(bytes,x,2).Replace( - ”,”)時,輸出為 EE00 ,其整數值為 60928 ,但在這種情況下,輸出應該是 238 字節 EE 為整數。

但在其他情況下,2個字節可能是 EE01 ,其整數值 60929 在這種情況下是正確的。

任何建議如何解決我的問題?

由于有人說這個問題令人困惑,我會重申我的問題我有很長的十六進制字符串作為輸入。在十六進制字符串中,

1)前12個字節表示字符串。
2)接下來的11個字節也代表了其他一些字符串。
3)接下來1個字節表示整數。
4)接下來的3個字節表示整數。
5)接下來的4個字節表示整數。
6)接下來的4個字節表示浮點數。
7)接下來的7個字節表示字符串。
8)接下來的5個字節表示整數。

因此,對于第4種情況,如果字節是ee 00 00,那么我應該忽略0并將ee轉換為整數。但是如果它是ee 00 ee,那么我應該將ee00ee轉換為整數。我每次都會遵循上面提到的相同模式。

我的問題已解決。我正在犯Endianness的錯誤。我收到的數據是EE 00,在轉換為整數之前,我應該將它作為00 EE。感謝所有為我提供解決方案的人,并抱歉錯過了這個重要的問題。

PS:C# 使用BitConverter.ToString(byte[] value)轉換后字符串帶有橫杠“-”,去掉橫杠方法

使用BitConverter.ToString(byte[] value).Replace("-", ""),可去掉橫杠

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持億速云。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

西乌珠穆沁旗| 界首市| 石嘴山市| 石狮市| 洛阳市| 盐亭县| 和静县| 商南县| 吐鲁番市| 敦煌市| 西和县| 永德县| 连州市| 林州市| 大厂| 沙洋县| 长垣县| 轮台县| 兰考县| 绵阳市| 靖州| 凤阳县| 文昌市| 绥江县| 南开区| 嵊泗县| 湛江市| 巫山县| 吐鲁番市| 深泽县| 包头市| 宁海县| 北票市| 泰和县| 遂昌县| 和龙市| 西充县| 铜鼓县| 磐石市| 织金县| 邳州市|