访问数组中的数据时发生C#IndexOutOfRangeException



我有以下代码:

String[] enteteSplit = new String[48];
enteteSplit = entete.Split(';');
enteteSplit[35] = enteteSplit[35].Replace(',', '.');

其中entete是一个字符串。第三行抛出IndexOutOfRangeException,我无法解决这个问题,有什么想法吗?

非常感谢。

当您调用这条线路时

enteteSplit = entete.Split(';');

您实际上是在创建一个数组,该数组不包含48个元素,而只包含在分号字符处拆分字符串所获得的元素。

所以如果你的字符串是

entete = "test;test1;test2";
enteteSplit = entete.Split(';');

得到的数组只有3个元素,因此试图到达第35个元素会导致IndexOutOfRange异常

你需要在这里介绍一个安全检查

if(enteteSplit.Length > 35)
   enteteSplit[35] = enteteSplit[35].Replace(',', '.');

相关内容

  • 没有找到相关文章

最新更新