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

  • kidrauhl

    kidrauhl

    15 Ocak 2007
  • MultiPlayStationMan

    MultiPlaySta

    17 Aralık 2009
  • Perihelion

    Perihelion

    23 NİSAN 2008