草庐IT

fileChannel

全部标签

java - FileChannel 返回 Assets 文件夹中文件的错误文件大小

我正在尝试使用FileInputStream从我的Assets中的原始文件夹中读取一个File。这就是我创建FileInputStream的方式:AssetManagerassetManager=getAssets();AssetFileDescriptorfileDescriptor=assetManager.openFd(fileName);FileInputStreaminputStream=newFileInputStream(fileDescriptor.getFileDescriptor());之后,我尝试像这样从File中读取数据:FileChannelfileChann

c# - .NET 等同于 Java FileChannel?

我想将字节直接从TCP套接字流式传输到磁盘上的文件。在Java中,可以使用NIOchannel,特别是SocketChannel和FileChannel。引用FileChannel#transferFrom(...):Thismethodispotentiallymuchmoreefficientthanasimpleloopthatreadsfromthesourcechannelandwritestothischannel.Manyoperatingsystemscantransferbytesdirectlyfromthesourcechannelintothefilesyste

java - 为什么我们在 Java 1.6 中从 FileChannel.map 得到 ClosedByInterruptException?

我们的一位客户提示说,我们对FileChannel.map的调用偶尔会因ClosedByInterruptException而失败。Javadoc没有将此列为合法的可能性。有谁知道这里会发生什么?Cause0:java.nio.channels.ClosedByInterruptExceptionCause0-StackTrace:atjava.nio.channels.spi.AbstractInterruptibleChannel.end(AbstractInterruptibleChannel.java:184)atsun.nio.ch.FileChannelImpl.map(F

java - FileChannel#write 总是会写入整个缓冲区吗?

(这与WouldFileChannel.readreadlessbytesthanspecifiedifthere'senoughdata?相关(或者说是“相反”)长话短说:这会一直写入整个缓冲区吗...ByteBufferbytes=...;fileOutputStream.getChannel().write(bytes);...或者是否有必要使用这样的循环:ByteBufferbytes=...;while(bytes.remaining()>0){fileOutputStream.getChannel().write(bytes);}?由于commentinanotherans

java - 为什么 Java 中的 FileChannel 不是非阻塞的?

我想写一个同时写入多个文件的程序;认为通过使用非阻塞模式可以使用一个线程。但是FileChannel不支持非阻塞模式。有人知道为什么吗? 最佳答案 UNIX不支持文件的非阻塞I/O,参见Non-blockingI/Owithregularfiles.由于Java应该(至少尝试)在所有平台上提供相同的行为,FileChannel没有实现SelectableChannel。但是Java7将包含一个新的AsynchronousFileChannel支持异步文件I/O的类,这是一种不同于非阻塞I/O的机制。通常只有套接字和管道通过selec

go - 内置库来持久化 BTree,相当于 Java 的 `FileChannel` 和 `ByteBuffer`

因此,我按照CLRS算法用Java编写了这个持久性BTree。我使用FileChannel和ByteBuffer将树存储在文件中,在需要时读取和写入节点。我尝试寻找如何在Go中存储这样的BTree,并发现了os.File,我认为它可以像Java的FileChannel一样使用。但是,我找不到ByteBuffer的等效项。我查看了bytes.Buffer,我明白了它是如何工作的,但是它没有ByteBuffer的方便的putInt,putDouble等...我是否必须自己实现那些将整数和double转换为字节数组的函数?我也看了encoding.binary,但是这个看起来很麻烦。我知道我

Java NIO FileChannel 与 FileOutputstream 性能/实用性

我试图弄清楚当我们使用nioFileChannel与普通FileInputStream/FileOuputStream读取和写入文件时,性能(或优势)是否有任何差异文件系统。我观察到,在我的机器上,两者的性能都一样,而且很多时候FileChannel的方式都比较慢。我可以知道比较这两种方法的更多细节吗?这是我使用的代码,我正在测试的文件大约是350MB。如果我不考虑随机访问或其他此类高级功能,那么将基于NIO的类用于文件I/O是否是一个不错的选择?packagetrialjavaprograms;importjava.io.File;importjava.io.FileInputStr

Java NIO FileChannel 与 FileOutputstream 性能/实用性

我试图弄清楚当我们使用nioFileChannel与普通FileInputStream/FileOuputStream读取和写入文件时,性能(或优势)是否有任何差异文件系统。我观察到,在我的机器上,两者的性能都一样,而且很多时候FileChannel的方式都比较慢。我可以知道比较这两种方法的更多细节吗?这是我使用的代码,我正在测试的文件大约是350MB。如果我不考虑随机访问或其他此类高级功能,那么将基于NIO的类用于文件I/O是否是一个不错的选择?packagetrialjavaprograms;importjava.io.File;importjava.io.FileInputStr