读文件 ... 不是很熟悉java,看看为什么出现错误?
- Java code
File file = new File(FileName) ; java.io.FileReader fr=new java.io.FileReader(file); char[] cbuf=new char[1024];Integer offset=Integer.valueOf(1);Integer iRead;iRead=fr.read(cbuf,offset,1024);
出现如下错误:
Exception in thread "main" java.lang.IndexOutOfBoundsException
at sun.nio.cs.StreamDecoder.read(StreamDecoder.java:131)
[解决办法]
offset是不是不是应该从0开始?
[解决办法]
看看StreamDecoder.java的131行
[解决办法]
数组越界,数组下标应该从0开始,1023结束进行阅读,你这样读取的是第二个到第1025个数组元素,显然是越界了
[解决办法]
看错了,1楼正解,从0开始
offset是cbuf的偏移量吧
read(cbuf,1,1023)
read(cbuf,0,1024)