Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   From Binary To Text (https://javascript.ru/forum/misc/27928-binary-text.html)

brizzzobot 29.04.2012 22:06

From Binary To Text
 
может кто нибудь дать готовый вариант, я написал на С#, а как на JS реализовать такой алгоритм ума не приложу...
код C#:
Код:

public override string FromBinaryToText(string binarystring)       
        {
            StringBuilder text = new StringBuilder(binarystring.Length / 8);

            for (int i = 0; i < (binarystring.Length / 8); i++)
            {
                string word = binarystring.Substring(i * 8, 8);
                text.Append((char)Convert.ToInt32(word, 2));
            }

            return text.ToString();
        }

мб для этого (char)Convert.ToInt32(word, 2) есть замена?

п.с. сама binarystring содержит в себе вот что(например): 01100001011000100110001101100100011001010110011001 10011101101000 (это - abcdefgh). что я и обозвал binarystring. а мне надо чтобы из вот такого: 01100001011000100110001101100100011001010110011001 10011101101000, получилось abcdefgh.

Gvozd 30.04.2012 01:04

Цитата:

Сообщение от brizzzobot
From Binary

где вы в JS нашли бинарные строки?
строки в JS - UTF-8

brizzzobot 30.04.2012 02:52

сама binarystring содержит в себе вот что(например): 01100001011000100110001101100100011001010110011001 10011101101000 (это - abcdefgh). что я и обозвал binarystring. а мне надо чтобы из вот такого: 01100001011000100110001101100100011001010110011001 10011101101000, получилось abcdefgh.

Octane 30.04.2012 03:05

http://javascript.ru/string.fromcharcode

Gvozd 30.04.2012 08:43

Цитата:

Сообщение от brizzzobot
что я и обозвал binarystring.

Надо было об этом сразу сказать - телепатов здесь нет, и что вы там себе напридумывали под видом binary строки, нам отсюда не видно

brizzzobot 30.04.2012 14:59

Цитата:

Сообщение от Gvozd (Сообщение 172027)
Надо было об этом сразу сказать - телепатов здесь нет, и что вы там себе напридумывали под видом binary строки, нам отсюда не видно

согласен, мой косяк, не подумал, исправлюсь.

brizzzobot 30.04.2012 19:28

function BinaryToText(binaryString) {
	var text = '';
	for (var i=0; i<(binaryString.length/8); i++) {
		var word = parseInt(binaryString.substr(i*8,8));
                       //вот здесь надо как то получитьCharCode по бинарному word
		text += String.fromCharCode(word);
	}
	
	return text;
}


киньте пожалуйста идей. и что почитать для реализации.

brizzzobot 30.04.2012 19:36

я так понял что нужно в принципе просто перевести bin to dec и я получу тот самый CharCode? я правильно мыслю?

Octane 30.04.2012 19:55

в hex, только, наверное, binaryString у вас на основе ASCII кодировки формируется, почитайте про совместимость с UTF-8, потому что, как написал Gvozd, в JavaScript строки представлены в UTF-8

brizzzobot 30.04.2012 20:33

все получилось, всем спасибо.
function BinaryToText(binaryString) {
	var text = '';
	for (var i=0; i<(binaryString.length/8); i++) {
		var word = binaryString.substr(i*8,8);
		word = parseInt(word,2);
		text += String.fromCharCode(word);
	}
	return text;
}


Часовой пояс GMT +3, время: 07:48.