问答详情
源自:3-1 RandomAccessFile基本操作

RandomAccessFile读取文件

14:31左右,

raf.seek(0); 

byte[] buf = new byte[(int)raf.length()]; 

raf.read(buf);

System.out.println(Arrays.toString(buf));

这里不明白为什么要先raf.read(buf);才能正确打印出buf,按平常的思路不应该

System.out.println(Arrays.toString(raf.read(buf)));吗

提问者:qq_非诚勿扰_3 2017-03-17 16:17

个回答

  • 慕粉1431473803
    2017-03-17 19:51:12
    已采纳

    raf.read(buf)是没有返回值的,不能直接写到Arrays.toString()中。Arrays.toString()的括号中是要一个数组。raf.read(buf)的意思是读取文件的内容存放在buf中,不对请指教