String.split问题

时间:2011-09-20 23:53:40

标签: c# string split

我是C#的新手。使用拆分时出现问题。我以为它返回了一个字符串数组。但是一旦它到达下面的最后一行就会崩溃并说我无法访问它。出界。即使在分裂中它也会发现多个'〜'。我问题的任何解决方案?

String tempString = " ";

        while ((tempString = streamReader.ReadLine()) != null)
        {
            String [] split = tempString.Split('~');

            typeOfVehicle = split[0];
            manufactuer = split[1];

非常感谢

问题解决了。

2 个答案:

答案 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);
}