Lemuria
2014-11-26 16:18
数组建的只有[8*20]这么点大,为什么能读几兆的MP3文件?想不通
不是一次性都读取到buf数组中,看下面的代码第5行,通过read方法读到buf数组中,buf数组满了就进行处理(转换成16进制显示),然后再接着读,直到读到文件末尾为止。
FileInputStream in = new FileInputStream("e:\javaio\1.mp3");
byte[] buf = new byte[8 * 1024];
int bytes = 0;
int j = 1;
while((bytes = in.read(buf,0,buf.length))!=-1){
for(int i = 0 ; i < bytes;i++){
System.out.print(Integer.toHexString(buf[i] & 0xff)+" ");
if(j++%10==0){
System.out.println();
}
}
}
in.close();
我明白了,这里是一串一串的读文件,thank!
这里bytes不用重置为0么?
文件传输基础——Java IO流
133755 学习 · 1030 问题
相似问题
回答 1
回答 1