【发布时间】:2013-11-05 07:52:08
【问题描述】:
我在通过 BitConverter.ToInt32 将字节数组转换为 int32 时遇到问题。
“System.ArgumentException”类型的未处理异常发生在 mscorlib.dll
附加信息:目标数组不够长,无法复制 > 集合中的所有项目。检查数组索引和长度
private void textBox2_TextChanged(object sender, EventArgs e)
{
byte[] StrToByte = new byte[9];
int IntHexValue;
StrToByte = Encoding.UTF8.GetBytes(textBox2.Text);
textBox4.Text = BitConverter.ToString(StrToByte);
IntHexValue = BitConverter.ToInt32(StrToByte, 0);
}
【问题讨论】:
-
你为什么要分配一个 9 字节的数组,然后忽略它? (您正在为
StrToByte分配一个新值。)textBox2.Text的内容是什么?完全不清楚您要在这里实现什么。 -
textBox2.Text的值是多少? -
@SonerGönül,为什么?您在寻找另一个 shell 命令吗?
:) -
BitConverter应用于 UTF-8 数据....?只是:为什么?你想达到什么目的?因为除非要求真的很奇怪,否则这不是一种有效的方法...... -
@gdoron 是的!转到
run并输入BitConverter.Encoding.UTF8.GetBytes(textBox2.Text) -quickly,一切准备就绪:)