为什么我收到“输入字符串格式不正确”错误?

时间:2016-04-30 14:08:20

标签: c# .net string

我尽可能多地搜索,我唯一能找到的是与我的情况无关的例子。所以我来到这里我正在制作一个保存编辑器,我正在尝试将组合框选项写入保存文件。好吧,它似乎一路走到了写它的地步,但随后它将输入字符串错误推向了我。这是相关的代码。哦,组合框选项的第一个字符是必需的十六进制值。

编辑:当字符串实际上是一个字符串

时,我回溯到了
        string filename = textBox1.Text;

        //if comboBox1.SelectedIndex
        string comboxVal = comboBox1.Text;
        char[] chimney = new char[4];
        chimney[0] = '0';
        chimney[1] = 'x';
        comboxVal.CopyTo(0, chimney, 2, 2);


        string s = new string(chimney);
        label7.Text = s;
        FileStream fw = new FileStream(filename, FileMode.Open, FileAccess.ReadWrite);
        fw.Position = 0x684;
        fw.WriteByte(Convert.ToByte(s));
        fw.Close();

1 个答案:

答案 0 :(得分:0)

让我们看看这里发生了什么。

你有char[] write。一组字符。

您致电string compWrite = Convert.ToString(write);。接收对象作为输入的Convert.ToString(object value)的重载由编译器选择(您可以通过在ToString上移动鼠标光标来检查它。)

因此Convert.ToString(object)被调用,结果为System.Char[],存储在compWrite

现在我们有Convert.ToByte(compWrite)尝试将数字的字符串表示转换为byte类型的整数变量。有任何疑问它失败了“输入字符串格式不正确”错误?