溫馨提示×

溫馨提示×

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

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

C#用什么方法將BitConverter.ToString產(chǎn)生字符串再轉(zhuǎn)換回去

發(fā)布時間:2021-10-15 16:52:12 來源:億速云 閱讀:131 作者:柒染 欄目:編程語言

這篇文章將為大家詳細(xì)講解有關(guān)C#用什么方法將BitConverter.ToString產(chǎn)生字符串再轉(zhuǎn)換回去,文章內(nèi)容質(zhì)量較高,因此小編分享給大家做個參考,希望大家閱讀完這篇文章后對相關(guān)知識有一定的了解。

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轉(zhuǎn)換為十六進制字符串

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

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

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

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

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

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

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

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

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

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

關(guān)于C#用什么方法將BitConverter.ToString產(chǎn)生字符串再轉(zhuǎn)換回去就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,可以學(xué)到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI