Как получить двоичный код за ASCII (C #) - PullRequest
4 голосов
/ 07 апреля 2011

Я пытаюсь выяснить, как преобразовать ввод в консоль, в двоичный файл;как такое преобразование можно сделать в C #?
Заранее спасибо.

Ответы [ 4 ]

6 голосов
/ 07 апреля 2011
string s = Console.ReadLine();
byte[] bytes = Encoding.ASCII.GetBytes(s);

Обратите внимание, что кодировка, используемая консолью, на самом деле не является ASCII ... вам, вероятно, следует использовать Console.InputEncoding вместо Encoding.ASCII

Чтобы получить двоичное представление каждого байта, вы можете использовать Convert.ToString:

foreach(byte b in bytes)
{
    Console.WriteLine(Convert.ToString(b, 2));
}
1 голос
/ 07 апреля 2011
var text = Console.ReadLine();

Сначала получите строку в байтах:

var ascii = Encoding.ASCII.GetBytes();

Затем выполните цикл по байтам и напечатайте двоичное представление каждого байта:

for(int i = 0; i < ascii.Length; i++)
{ 
    // I am not doing your homework ;)
}
0 голосов
/ 07 апреля 2011

Вы можете использовать сборку .NET в классах BinaryReader / BinaryWriter.

0 голосов
/ 07 апреля 2011

Отдельный символ может быть неявно преобразован в целое число. См. документацию . Если вы хотите преобразовать целую строку, то предложение Томаса имеет больше смысла.

...