尝试解析字符串以在数组

时间:2015-10-11 23:11:28

标签: c# arrays

这是我现在的想法,我不知道我做错了什么。 我试图做的是抓取文本框的内容,拆分用逗号分隔的值,将它们放入一个数组,然后将它们解析为浮动并将它们放入另一个数组中。 System.NullReferenceException:未将对象引用设置为对象的实例。

        Xt = s1.Split(',').Select(s1V => s1V.Trim()).ToArray();
        Yt = s2.Split(',').Select(s2V => s2V.Trim()).ToArray();
        float number;
        if (Xt.Length == Yt.Length)
        {
            int i = 0;
            foreach (var value in Xt)
            {
                // Console.WriteLine("l:"+Xt.Length+" "+Xt[i]+"+");
                if (Xt[i] != null)
                {
                    Xi[i] = float.Parse(Xt[i]);
                }
                //  Yi[i] = float.Parse(Yt[i]);
                i++;
            }
 ...

1 个答案:

答案 0 :(得分:-1)

string s1 = textBox1.Text;
        string s2 = textBox2.Text;            
        float[] Yi;
        Xt = s1.Split(',').Select(s1V => s1V.Trim()).ToArray();
        Yt = s2.Split(',').Select(s2V => s2V.Trim()).ToArray();
        float number;
        if (Xt.Length == Yt.Length)
        {
            int i = 0;
            Xi = new float[Xt.Length];//<---properly initializing the array.
            foreach (var value in Xt)
            {

                // Console.WriteLine("l:"+Xt.Length+" "+Xt[i]+"+");
                if (Xt[i] != null)
                {
                    Xi[i] = float.Parse(Xt[i]);
                }
                //  Yi[i] = float.Parse(Yt[i]);
                i++;

            }

感谢MarcinJuraszek。