问题标签 [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.

0 投票
3 回答
10001 浏览

java - Java 使用 FileChannel 从文件中读取

从大文件中读取时,我从这段代码中得到了一些奇怪的输出,文件是使用 while 循环打印到 99,999 位的,但是,在读取文件并打印内容时,它只输出 99,988 行。另外,使用 ByteBuffer 是读取文件的唯一选择吗?我见过其他一些使用 CharBuffer 的代码,但我不确定应该使用哪一个,以及在什么情况下应该使用它们。注意:filePath 是指向磁盘上文件的 Path 对象。

0 投票
1 回答
656 浏览

java - 从 AssetManager Android 获取 FileChannel

我想FileChannelAssetManagerAndroid中获得一个,有什么办法吗?我想将一些原始的自定义二进制文件映射到一些缓冲区。(如果您有比使用 更好的解决方案AssetManager,请随时提及。

0 投票
4 回答
4063 浏览

jvm - 为什么 java.nio.FileChannel transferTo() 和 transferFrom() 更快???它使用DMA吗?

为什么在某些 JVM/OS 组合上 java.nio.FileChannel transferTo() 和 transferFrom() 比逐字节传输(基于流或使用 ByteBuffer)更快???

这些方法是否使用直接内存访问 (DMA) 而不是为每个字节传输发出中断请求 (IRQ)?

0 投票
1 回答
620 浏览

java - Read and Write with File channel

I need help on the file operation using FileChannel . My requirement is, I have to read a big file from the system, then need to check the file line by line. If certain strings found then need to add new lines or delete old lines from the file. And then need to save the data.

N.B.

  1. I am trying to avoid temp file creation.
  2. Like to do it with FilChannel
  3. Also like to open a single file channel with read and write. To do that I have used RandomAccessFile to get FileChannel.

Please help me on this.

0 投票
2 回答
150 浏览

java - 将数据写入文件正在擦除它之前的所有内容(放置 00)并更改文件大小

我有一个写出一些数据的程序 - 我正在使用这个逻辑

它将正确的数据写入正确的位置,唯一的问题是要写入的起始位置(startwr)之前的所有内容都被替换为 00,并且文件也被更改,使得写入完成的点,结束文件。

如何在不损坏先前数据和更改文件大小的情况下将数据写入文件?

0 投票
1 回答
3243 浏览

hadoop - Flume NG FileChannel 很慢

我一直在试验flume ng(flume-ng-1.2.0+24.81-1~lucid),一直在比较内存通道和文件通道的性能。

我的测试系统中的每个事件的大小为 1KB,在我当前的配置下,我能够使用内存通道处理大约 30,000 EPS。但是,当使用文件通道时,我只能处理大约 1600 EPS。

平均而言,我希望在我的生产系统上平均接收 2500 EPS,并且我想使用文件通道在接收器故障的情况下提供大约 1 小时的事件缓冲(我正在使用具有 1Gbps 连接的 HDFS 接收器到hadoop集群)。

这是我的文件通道配置:

我的 HDFS 接收器的批量大小已设置为 5000。

任何人都可以就如何提高文件通道的性能提出任何建议吗?

谢谢

0 投票
1 回答
674 浏览

java - 使用 Java 读取海量数据

首先,我对我的英语感到抱歉。

我正在寻找一种有效的方法来读取 java 中的大文件。我做了一个日志分析程序,我有至少 500 MB 到 4 GB 的日志文件。我已经尝试过 Filechannel 类(内存映射文件),但我无法获得有效的结果。看看这里:http ://www.linuxtopia.org/online_books/programming_books/thinking_in_java/TIJ314_029.htm

我的目的是读取缓冲区中的数据,然后使用正则表达式。

DumpFilePath 文件大小约为 4 GB。

有任何想法吗?

0 投票
1 回答
320 浏览

java - FileChannel transferFrom 的评论说明

我已经阅读了关于FileChannel's的评论transferFrom

这是什么意思

如果我从一个通道读取然后将其写入另一个通道,它不会将字节传输到缓存中吗?

0 投票
1 回答
277 浏览

io - 关于开通 FIleChannel 的咨询

为什么要以以下方式打开 FileChannel:

FileChannel.open(path,StandardOpenOption.READ,StandardOpenOption.APPEND);

给出一个例外?

我知道它是由 API 指定的。但是我想知道为什么它允许与 READ、WRITE 组合使用,而不是与 READ 和 APPEND 组合使用。

提前致谢。

0 投票
1 回答
1514 浏览

java - 无法使用 java.nio.channels.FileChannel 读取文件

我正在执行以下操作: - 创建一个空文件 - 锁定文件 - 写入文件 - 读回内容

但是我可以看到文件是用我指定的内容正确写入的,但是当我读回它时,它会为文件中的所有实际字符打印方形字符。该方形字符char相当于字节 0:

这里有什么问题?