问题标签 [filechannel]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - 使用文件通道随机访问文件?
当我从 得到FileChannel
时FileInputStream
,我发现我可以使用位置方法来自由移动文件指针。这是否意味着FileChannel
提供的功能RandomAccessFile
?
java - FileChannel -> BufferedReader -> Reader 的缺点
FileChannel
will 快于BufferedReader
, BufferedReader
will more faster thanReader
因为FileChannel
并且BufferedReader
已经切断了一些接收数据的中间步骤。
我的问题是:优势是显而易见的,但我没有看到网络上的任何消息来源说它的劣势。(FileChannel
到BufferedReader
,BufferedReader
到Reader
)。当我们切断中间步骤时,这是一个多么大的问题。
所以,请谁能教教我。
@:而且,同样的问题也适用于输出。请告诉我这些有什么缺点。
谢谢 :)
java - 如何使用 NIO 选择器尾随文件,换句话说,当向文件添加行时,选择一个通道以便您可以读取这些行?
因为您无法重定向 GC 日志,所以我可以选择使用 -Xloggc 将其重定向到一个文件,然后通过某种文件通道在我的选择器中获取该文件的内容。基本上,当将行添加到我的文件中时,会触发选择器来读取它们。这样我就可以通过编程方式获取 GC 日志。使用 NIO 可以做到这一点吗?
java - 无法解释的 ClosedByInterruptException。Java FileChannel 错误?
很少,我的生产应用程序ClosedByInterruptException
在调用FileChannel
. 根据 Java 文档,当调用线程处于中断状态时会发生这种情况。有趣的是,我的应用程序从不中断任何线程。这似乎是从应用程序下方发生的。也许某种系统中断?有没有人遇到过这个问题?
java - Java-NIO:将 FileChannel.read() 与 offset-address / NullPointer 一起使用
有谁知道如何使用FileChannel.read(ByteBuffer[],int,int)
java-NIO 的 -method 来读取文件的某个部分?
尝试执行 read() 方法时抛出 NullPointer。缓冲区应该足够大,offsetAddress 为 0,endAddress 255,文件大小远不止于此。
java - java FileChannel 写入文件并在末尾添加 \n
我正在尝试使用 FileChannel 制作日志。由于某种原因,它没有在我的文件中获得 \n 字符。
我的功能:
这是我的输出文件:
java - Java:使用 FileChannel 写入文件会使文件缩小?
我尝试使用 FileChannel 将特定字节写入文件的某个位置。但实际上文件缩小到我写更改的最后一个位置。我这样做:
这是我得到的输出:
谁能告诉我哪里出错了??
java - android:将一个文件复制到另一个文件的更快解决方案
我正在使用 BufferedInputStream 复制文件。我在循环中复制 byte[]。这对于大文件来说非常慢。
我看到了 FileChannel 结构。我也试过用这个。我想知道 FileChannel 是否比使用 IOSTreams 更好。在我的测试过程中,我看不到性能的重大改进。
或者有没有其他更好的解决方案。
我的要求是修改 src 文件的前 1000 个字节并复制到目标,将 src 文件的其余字节复制到目标文件。
使用文件通道
使用 I/O 流
java - 有没有办法使用同一个 FileChannel 进行读写?
我是 Java NIO 的新手。我看到一个FileChannel
对象同时具有读取和写入方法。FileChannel
但是我无法在单个时间点使用相同的读写器。有没有办法这样做?
java - Java - 在从文件中读取字节时处理字节
有没有办法让 java 中的一个线程对某些 FileInputStream 或类似内容进行读取调用,并让第二个线程同时处理正在加载的字节?我已经尝试了很多事情 - 我目前的尝试有一个线程运行这个:
第二个线程想要在加载字节时访问它们。显然,第一个线程中的读取调用会阻塞,直到缓冲区已满,但我希望能够在该点之前访问加载到缓冲区中的字节。目前,我尝试的所有内容都有缓冲区,并且它的支持数组在读取完成之前保持不变 - 这不仅破坏了这个线程的要点,而且还表明数据正在某个地方加载到某个中间缓冲区,然后稍后复制到我的缓冲区中,这似乎愚蠢。
一种选择是对数组进行一系列较小的读取,并在后续读取时使用偏移量,但这会增加额外的开销。
有任何想法吗?