我是C#的新手。使用拆分时出现问题。我以为它返回了一个字符串数组。但是一旦它到达下面的最后一行就会崩溃并说我无法访问它。出界。即使在分裂中它也会发现多个'〜'。我问题的任何解决方案?
String tempString = " ";
while ((tempString = streamReader.ReadLine()) != null)
{
String [] split = tempString.Split('~');
typeOfVehicle = split[0];
manufactuer = split[1];
非常感谢
问题解决了。
答案 0 :(得分:2)
您假设在分割字符串时,您将拥有至少2个元素。永远不要假设在尝试访问索引之前,请始终检查数组的长度。
答案 1 :(得分:0)
只有catch
例外,您很快就会发现您正在阅读的字符串存在问题。
String[] split = tempString.Split('~');
try
{
typeOfVehicle = split[0];
manufactuer = split[1];
}
catch
{
Console.WriteLine("Oops! It didn't work.");
Console.WriteLine("The offending string was \"{0}\"", tempString);
}