NIO里面FileChannel的read/write方法很有误导性,出于什么目的设计成这样? 你要理解JDK的开发者的思路,一个个脑子都有病。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 如果是 readFrom 或者 writeTo 才是你所理解的那样。 这个我知道,但从read通俗的理解和用法来说,应该也包含了readFrom的这个含义,如InputStream里面的read()方法,还有System.in.read()这个方法,都是从...读取的意思。这也是一般理解的意思。write也是一样。不懂的是为啥NIO要搞特殊,就算搞特殊,它的方法也可以命名为readTo()和writeFrom()吧 你去看看 InputStream#read(byte[]) 的方法,语义和 FileChannel#read(ByteBuffer) 是一样的呀,都是从流(通道)中读取数据到内存中。同样,OutputStream#write(byte[]), FileChannel#write(ByteBuffer) 也都是将内存中的数据写入流(通道)。 read 可以理解为将流或通道中的数据读出来,并放到 byte[] 或者 ByteBuffer 中去write 可以理解为将 byte[] 或者 ByteBuffer 中的数据写到流或通道中去read() 和 read(byte[]) 这两个方法是有区别的,因为第一个方法读出来的数据只能返回,因为没有容器给他存放数据,而后面那个方法应理解为从流中将数据读出来,再放到 byte[] 中去。 请问java.io.EOFException如何解决? 到底哪错了,咋客户端没反应 询问一个绘图软件的设计方案 一个字符串截取的问题 能什么画E-R图啊 JAVA中混频器 求jre 5.0 for windows下载地址!(非更新补丁、非例子程序、非工具集) 高人给点解答吧数据库连不上 为什么父类的静态方法没有被重写? 找代码和文档(java) java截取字符串 关于java通过socket接受xml的问题
这个我知道,但从read通俗的理解和用法来说,应该也包含了readFrom的这个含义,如InputStream里面的read()方法,还有System.in.read()这个方法,都是从...读取的意思。这也是一般理解的意思。write也是一样。不懂的是为啥NIO要搞特殊,就算搞特殊,它的方法也可以命名为readTo()和writeFrom()吧
write 可以理解为将 byte[] 或者 ByteBuffer 中的数据写到流或通道中去read() 和 read(byte[]) 这两个方法是有区别的,因为第一个方法读出来的数据只能返回,因为没有容器给他存放数据,而后面那个方法应理解为从流中将数据读出来,再放到 byte[] 中去。