当我定界一个字符串时(我最终想用字符定界)时,我遇到了一个奇怪的问题,我可以将其输出到屏幕上,但是当我尝试写入文本文件时,我得到了arrayIndexOutOfBoundsException。
System.out.println(s[index]);
String[] finalSplit = s[index].split("\\>");
System.out.println(s[index]+finalSplit.length);
System.out.println(finalSplit[1]);
bufOut.write(finalSplit[1]);
上面的示例输出如下:
<env:MessageSentDateTime>2011-11-17T11:22:33.456Z</env:MessageSentDateTime>
<env:MessageSentDateTime>2011-11-17T11:22:33.456Z</env:MessageSentDateTime>2
2011-11-17T11:22:33.456Z</env:MessageSentDateTime
Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 1
at Main.main(main.java:81)
如果不进行拆分,则可以将整个内容写到文本文件中,但我只希望信息不在中间。
有人对我要去哪里出错有任何建议吗?
最佳答案
排队
System.out.println(finalSplit[1]);
您正在访问不存在的元素1,因为拆分将全部移至finalSplit [0]。更改分割定界符(例如“>”)
关于java - Java:为什么不能使用BufferedReader将定界字符串写入文件?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/13531341/