SORU
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ş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Art Food Kitty - Kelly Eddington

    Art Food Kit

    7 Kasım 2006
  • huyked

    huyked

    28 Mart 2008
  • REK Roth Productions

    REK Roth Pro

    8 Ocak 2011