【发布时间】:2013-07-17 04:13:31
【问题描述】:
我正在编写一个打开文本文件并检查 cmets 的程序。然后它通过 cmets 解析以检查某些单词。
我遇到的错误与以下 while 循环有关,该循环检查当前行是否 如果那里有非反斜杠字符,则以空格或除“/”以外的任何字符开头,然后 while 循环移至下一行并再次检查。一旦 while 循环满足其要求并打破程序崩溃,我就会得到以下输出错误。
import java.rmi.Naming;
import java.net.InetAddress;
i
import java.lang.reflect.*;
i
ERROR: String index out of range: 0
at java.lang.String.charAt(Unknown Source)
at ExtraCredit.main(ExtraCredit.java:22)</code></pre>
这是有问题的代码示例
System.out.println(line);
char x = line.charAt(0);
while((line.charAt(0)!='/')&&(Character.isWhitespace(x)==false))
{
line = inputFile.nextLine();
x = line.charAt(0);
System.out.println(line);
System.out.println(x);
}
感谢您的帮助。我确定这是一个简单的错误,但我只是没有看到它。
【问题讨论】:
-
您应该添加一些打印语句来帮助您在整个程序中跟踪
line的长度。