我尝试了以下方法,但似乎有些不对劲。
File f=new File("D:\\aa.txt");
FileOutputStream fos =new FileOutputStream(f);
FileChannel fc=fos.getChannel();
ByteBuffer buf=ByteBuffer.allocate(128);
for (int i=0;i<16;i++) {
buf.putDouble(i*8,Math.sqrt(i));
}
fc.write(buf);
fc.close();
答案 0 :(得分:1)
在编写缓冲区之前,您需要flip()
缓冲区,如果您正在循环播放,则需要compact()
。