问题标签 [randomaccessfile]

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 投票
1 回答
347 浏览

java - RandomAccessFile:在最后一项之后添加空格?

我正在编写一个程序,允许用户使用 randomaccessfile 写入文本文件。用户输入姓名、年龄、地址,每一项都是20字节,所以记录长度是60字节。当用户要搜索记录时,输入记录号,程序进入seek(n*60),将这60个字节存入一个字节数组,然后输出。除了用户想要最后一条记录时,这工作正常。我找不到在姓名、年龄、地址后添加额外空格以填充 60 个字节的方法。我收到错误 java.io.EOFException: null 因此。

这是我用来写入文件的代码:

所以基本上我怎样才能在文本文件的最后一项之后添加额外的空白空间?

0 投票
1 回答
893 浏览

java - RandomAccessFile 读取 Cyrillic UTF-8 java

伙计们!

我无法使用RandomAccessFile.

这是一个简单的程序,它使用这种格式将信息写入特定文件(西里尔字母):

keyLength, valueLength, key, value

然后程序尝试读取此信息,但我的输出不正确:

UPD 预期输出:

问题是什么?(除了我脑袋小的问题)

0 投票
1 回答
2025 浏览

java - Java - Writing a file using randomAccessFile

I am trying a create a .dat file that is split into 5 columns each with the heading, "timestamp", "deviceId", "testId", "Availability" and "Latency". This file is going to be pointed to a database where there are tests being ran at the moment.

The idea is that the data from these tests will be collected and stored into this file that I have just created.

I have been told to use and work with RandomAccessFile.

Only problem is I have no idea how to write a file through Java. I have made somewhat of an attempt but it is by no means much at all;

As you can see, its not much at all!

I was told not to worry about getting into the technical side of things yet i.e the collection of data. At the moment all I need is the layout of each column and its 5 headings.

Can anyone help me or give me some advice on where to go from here, it would be much appreciated.

0 投票
1 回答
161 浏览

python - Python中随机文本的更快解决方案

我需要一个快速的解决方案来处理 Python 中随机的 w/r 文本片段。我想做的是这样的:

  1. 编写代码段并记录指针
  2. 使用指针检索片段

片段的长度是任意的,我选择不使用数据库来存储它们,而只使用指针。通过简单地用 C 函数替换 Python 文件方法(解决方案 1),它非常快,并且指针仅包含片段的“位置”和“多长时间”。在那之后,我尝试了我认为可以与 Berkeley DB 一起使用的真实东西。我不知道该怎么称呼它,也许是“分页”?

问题是,这段代码确实有效,比解决方案 1 快 1.5 到 2 倍,但速度并没有快多少,需要使用 4 部分指针。也许这不是一个值得的方法,但有没有显着改进的空间?

以下是代码:

0 投票
1 回答
420 浏览

java - Java RandomAccessFile setLength 但用于二进制文件的开头

我一直在阅读 RandomAccessFile 并了解它可以通过 setLength 将文件的结尾截断为比文件短的长度。我试图将文件的“结尾”复制到一个新文件并截断​​开头。

例如:我想删除文件的前 1300 个字节并将文件的其余部分复制到一个新文件中。

有没有办法做到这一点?

干杯

0 投票
1 回答
121 浏览

java - Java transferFrom 二进制文件的一部分?

我想使用 RandomAccessFile transferFrom 函数从位置 1300(以 uint8 块)开始的文件 filein 传输到 fileto。

我的输出文件只是空的。

有谁知道我做错了什么??

编辑1:

我变了

但是现在输出正在打印到所有文件,除了它在原始标题所在的位置放置了很多 00 十六进制数???

0 投票
1 回答
155 浏览

java - 随机存取文件:读写

我基本上想要做的是我首先将一个字符“123”写入文件test2.txt。然后我读取它,将读取的值存储在变量 z(char datatype) 中,并将其与 (if) 部分中的“123”进行比较。但它返回 NO MATCH... 即使变量 z 的值为“123”(System.out.println(z) 在屏幕上打印 123)。为什么会这样?我还检查了 test2.txt 文件。它包含 123,在 123 后面有一个小 L(由于什么原因?unicode 转换或其他原因??),我认为这是问题的根源。请帮忙。提前致谢。

源代码:

0 投票
2 回答
316 浏览

java - 从二进制文件读取时出现 ClassCastException

我有一段java.lang.ClassCastException时间用通用方法读取二进制文件。我试图用相同的方法读取两个不同的文件,但后来我得到了异常,我不知道为什么。

这是用于读取文件的通用方法中的代码: Read是 Class 的方法部分ReadBenary

这是主要的代码:

这是在文件中写入对象的方法:

Bill并且Customer是两个独立的类。当我尝试运行该程序时,它说Customer不能转换为Bill.

它表示错误发生在带有 * 的行中。

0 投票
1 回答
1096 浏览

java - 使用从 WatchService 获得的路径的 RandomAccessFile 的 FileNotFound 异常?

为什么要从返回的 a 中获取RandomAccessFile(path.toFile(),"rw")产品 a并且种类是?FileNotFoundExceptionPathWatchServiceWatchEventENTRY_CREATE

0 投票
0 回答
86 浏览

java - 如果 WeakReference 被垃圾回收,则关闭 FileHandle

我有一个具有以下结构的类:

在构造函数中打开 RandomAccessFile rand。在另一个类中,我创建了一个哈希图:

该映射包含到由上述类实现的 IIndex 接口的映射。如果我将 RandomMatrixIndex 放在地图中,则引用可能会被垃圾收集,并且我无法正确关闭 RandomAccessFile。

现在我的问题。如果对 WeakHashMap 的引用丢失,我如何关闭 RandomAccessFile?我必须在 RandomMatrixIndex 构造函数中包含终结器吗?OR 是文件句柄自动关闭。(如果这是糟糕的编码风格,请原谅)

非常感谢!