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

  • EvilControllers

    EvilControll

    20 Ocak 2008
  • girleffect

    girleffect

    20 Mayıs 2008
  • SuperPrincessjo

    SuperPrinces

    1 EKİM 2010