22 Kasım 2008, CUMARTESİ
Nasıl Onaltılık Dize ve Başkan versa için Bayt Dizisi dönüştürme?
Bu muhtemelen İnternet üzerinden ortak bir sorudur, ama düzgünce onaltılık dize ve Başkan Yardımcısı için bir bayt dizisi tam tersi dönüştürebilirsiniz nasıl açıklayan bir cevap bulamadım.
CEVAP
22 Kasım 2008, CUMARTESİ
Ya da:
public static string ByteArrayToString(byte[] ba)
{
StringBuilder hex = new StringBuilder(ba.Length * 2);
foreach (byte b in ba)
hex.AppendFormat("{0:x2}", b);
return hex.ToString();
}
ya da:
public static string ByteArrayToString(byte[] ba)
{
string hex = BitConverter.ToString(ba);
return hex.Replace("-","");
}
Bu, örneğin here işin daha da çeşitleri vardır.
Ters dönüşüm şöyle:
public static byte[] StringToByteArray(String hex)
{
int NumberChars = hex.Length;
byte[] bytes = new byte[NumberChars / 2];
for (int i = 0; i < NumberChars; i = 2)
bytes[i / 2] = Convert.ToByte(hex.Substring(i, 2), 16);
return bytes;
}
Substring
Convert.ToByte
ile birlikte en iyi seçenek. Daha fazla bilgi için this answer bkz. Eğer daha iyi performans istiyorsanız, SubString
bırak önce Convert.ToByte
kaçınmak gerekir.
Bunu Paylaş:
Bir kodlama kullanmadan bayt dizisi iç...
Nasıl Java hex bir dize bir bayt dizis...
nasıl dize ve bunun tersi bayt dizisi ...
Nasıl bir bayt dizisi için bir dize dö...
Bayt dönüştürmek için [nasıl] dize?...