【问题标题】:Is there a function to convert to binary from textbox?是否有从文本框转换为二进制的功能?
【发布时间】:2021-12-20 01:42:45
【问题描述】:

我想转换文本,例如“Hello World”,转成二进制并显示在 textbox2 中。

{
    textBox2.Text = textBox1.Text;
}

当我在 textbox1 中写入文本时,我可以通过使用 textbox1.text 来获取它。现在我想将它转换为二进制(001010...)并在 textbox2.text 中以二进制(001010...)显示。我该怎么做?

【问题讨论】:

  • "现在我想把它转换成二进制" - 把什么转换成二进制?这里的文字是什么?如果它已经是“001010”那么那已经是 in 二进制文件了。真的不清楚你想要达到什么目的。 (老实说,我建议忽略文本框 - 演示您在一个简单的控制台应用程序中尝试执行的操作。我怀疑您只对字符串和数字感兴趣。)
  • 你的意思是在textBox1中输入了一串数字,你可以用int.Parse将其转换为一个数字,然后用Convert.ToString(yourNumber, 2)将该数字转换为一个二进制数字字符串?跨度>
  • 感谢您的帮助,我添加一张照片来描述我的需要

标签: c#-4.0


【解决方案1】:

阅读更新后的问题后,我可以提出以下简单的二值化:

string stringToConvert = "Hello world!";
var sb = new StringBuilder();
for (int i = 0; i < stringToConvert.Length; ++i) {
    sb.Append(Convert.ToString(Convert.ToUInt16(stringToConvert[i]), 2).PadLeft(16, '0'));
    sb.Append('.'); // can be removed
}
Console.WriteLine(sb.ToString());

【讨论】:

    【解决方案2】:

    如果你想将输入的数字(十进制——你可以通过修改baseFrom来改变它,变成一个二进制数字(你可以通过修改baseTo来改变它),你可以使用这个sn-p:

    string numberToConvert = "15";
    int baseFrom = 10;
    int baseTo = 2;
    string result = Convert.ToString(Convert.ToInt32(numberToConvert, baseFrom), baseTo);       
    Console.WriteLine(result);
    

    【讨论】:

      猜你喜欢
      • 2011-07-08
      • 2012-06-17
      • 1970-01-01
      • 2017-03-24
      • 1970-01-01
      • 2012-05-04
      • 1970-01-01
      • 1970-01-01
      • 2023-03-05
      相关资源
      最近更新 更多