所以我想要做的是看看一个字符串在文本文件中是否以#开头。但是,当我调用charAt(0)
与#
的比较时,它给出了一个错误。
Exception in thread "main" java.lang.StringIndexOutOfBoundsException: String index out of range: 0
at java.lang.String.charAt(Unknown Source)
at StringTranslator.main(StringTranslator.java:63)
代码本身看起来像这样(好吧,完成所有比较的部分)
String line;
line = br.readLine())
if(line.charAt(0) == '#')
{
// this is a comment line ignore it
writer.println(line);
}
有什么建议可以让它识别#
符号吗?提前谢谢你!注意:我在用记事本写文件和用代码读文件时都使用了UTF-8 encoding
!
发布于 2018-09-15 23:22:17
发布于 2018-09-15 23:21:52
崩溃与#
无关。您正在尝试计算空字符串中的第一个字符。在访问其字符之前,应确认字符串不为空:
if (line.length() > 0 && line.charAt(0) == '#')
发布于 2018-09-15 23:22:11
错误"String index out of range: 0“表示您的字符串没有任何字符,也就是说是空字符串。
https://stackoverflow.com/questions/52346051
复制相似问题