0x49D1

0L4g0YDQsNC30YDQsNCx0L7RgtC60LUsINC00LvRjyDRgNCw0LfRgNCw0LHQvtGC0YfQuNC60L7QsiA=

Snippets: Перевод массива байтов в строку и обратно


При создании хешей часто требуется такая возможность..Так что вот и очередной сниппет =)

Массив байтов в строку:
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();
}

или

public static string ByteArrayToString(byte[] ba)
{
 string hex = BitConverter.ToString(ba);
 return hex.Replace("-","");
}

И обратно:

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;
}

*inspired by stackowerflow

Реклама

3 responses to “Snippets: Перевод массива байтов в строку и обратно

  1. Dmitri 05/08/2010 в 22:43

    StringToByteArray фееричен. Намного проще вызвать Encoding.GetBytes().

    • purs 05/08/2010 в 22:57

      Ух =) Спасибо за комментарий..Вот уж не ожидал вас тут увидеть. Что касается кода — у меня маловато пока опыта и про Encoding.GetBytes() не знал =) А эти куски брал с stackoverflow, даже в проекте использовал, надеясь на то, что там плохого не посоветуют.

  2. iZero 03/04/2012 в 23:43

    Спасибо! то что нужно

Добавить комментарий

Заполните поля или щелкните по значку, чтобы оставить свой комментарий:

Логотип WordPress.com

Для комментария используется ваша учётная запись WordPress.com. Выход / Изменить )

Фотография Twitter

Для комментария используется ваша учётная запись Twitter. Выход / Изменить )

Фотография Facebook

Для комментария используется ваша учётная запись Facebook. Выход / Изменить )

Google+ photo

Для комментария используется ваша учётная запись Google+. Выход / Изменить )

Connecting to %s

%d такие блоггеры, как: