溢出异常。StringBuilder
您正在将字符串的ASCII值转换为它们的二进制值(Convert.ToString(string, 2)转换为基数2,对吗?)
character -> ASCII值->十六进制字符串表示-> Int值-> Int值的二进制字符串表示 ->尝试以10为基数解析该字符串。
例如,如果"Data“是"147483647",那么”"110001110100110111110100111000110011110110110100110111“”就是以10为基数的明显大于'long.MaxValue‘的堆。通过将字符串中的每个字符转换为其ASCII值的二进制表示形式,当您最终以10为基数解析它时,您创建的数字字符串的位数比最初要多得多。
只需在调试器中快速单步执行即可确认该问题。