-1

我的代码显示未处理的 ArrayIndexOutOfRangeException 异常。

    public static DateTime storeTime(String date)
    {
        string[] dateSplit;
        string[] timeSplit;
        DateTime returnValue = new DateTime();

        if (date == "")
            return returnValue;

        dateSplit = date.Split(new Char[] { 'T' });
        timeSplit = dateSplit[1].Split(new Char[] { '+' }); // Exception occurs here.
        timeSplit[0] = timeSplit[0].Substring(0, timeSplit[0].Length - 1);
        returnValue = DateTime.ParseExact(dateSplit[0] + " " + timeSplit[0], "yyyy-MM-dd HH:mm:ss",null);

        return returnValue;

    }
4

1 回答 1

1

您输入的参数date不包含任何字符 T,因此您的拆分仅产生一个元素。为此尝试访问 dateSplit[1] (第二个元素)失败。您给出的索引 1 超出范围,只允许 0 因为只有一个元素。

请注意,这是一个非常基本的错误,您可能已被否决,因为您应该能够自己检测到这一点。下次,按 F5 调试并检查崩溃时的所有变量,以便您自己解决问题。

于 2013-05-23T10:59:47.017 回答