Преобразование текста в биты (1 и 0) - PullRequest
0 голосов
/ 25 мая 2010

Я реализую алгоритм хеширования MD-5 и хочу преобразовать нужный мне текст в биты, чтобы я мог начать манипулировать ими. Как вы знаете, для хеширования требуется взять блок битов и затем манипулировать ими. Есть много способов сделать это, но я не могу определить лучший / самый простой способ просто преобразовать текст (строку) в массив битов. Любая подсказка? В C #

Ответы [ 3 ]

2 голосов
/ 25 мая 2010

Encoding.GetBytes (строка s) см. Msdn . Конечно, вы должны выбрать подходящую кодировку, в зависимости от того, какую кодировку вы хотите.

1 голос
/ 25 мая 2010

Как только вы используете Encoding.GetBytes (строки), как это было предложено, вы можете передать байт [] в конструктор класса BitArray :

Управляет компактным массивом битовых значений, которые представлены как логические значения, где true указывает, что бит включен (1), а false указывает, что бит выключен (0).

0 голосов
/ 26 мая 2010

Это то, что вы просили.

    protected void Page_Load(object sender, EventArgs e)
    {
        var x = GetBits("0101010111010010101001010");
    }

    private bool[] GetBits(string sBits)
    {
        bool[] aBits = new bool[sBits.Length];

        for (var i = 0; i < aBits.Length; i++)
        {
            aBits[i] = sBits[i] == '1';
        }

        return aBits;
    }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...