问题标签 [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 投票
4 回答
1465 浏览

java - 重命名 RandomAccessFile

我有一个名为 data.bin 的 RAF 和一个名为 temp.bin 的临时 RAF。

临时文件基本上是 data.bin 文件,但我更改了其中的信息。所以一旦我完成了对临时文件的更改,我如何将 temp.bin 的名称更改为 data.bin 并删除旧的 data.bin?

我看到了一些关于用 .renameTo() 重命名文件的事情,但这确实适用于 RandomAccessFile。我找不到任何像 RAF 那样的方法

0 投票
3 回答
3335 浏览

java - Reading a log file which gets rolled over

I am trying to use a simple program to read from a log file. The code used is as follows:

The code works well for new lines being added to the log file but it does not replicate the rollover process. i.e. when the content of the log file is cleared I expect the java console to continue reading text from the first line newly written to the log. Could that be possible? What changes need to be made to the existing code to achieve that?

0 投票
1 回答
1124 浏览

java - RandomAccessFile - 阅读时的汉字

file.dat 上的字段以这种方式组织:

姓名姓氏姓名姓氏...

我使用这段代码写入文件:

这是阅读:

getContent() 函数:

从文件中读取并设置 JTextField 值时,它显示中文字符。为什么?

0 投票
3 回答
738 浏览

java - Java,将 RandomAcessFile 移动到行首

我正在尝试使用 RandomAcessFile 搜索一个相当大的文件(5gb)的内容。使用二进制搜索,我将文件分为两部分,但只有当我能够读取 randomacessfile 指针从一开始指向的行时,这种策略才有效。由于不能保证指针将指向文件的开头,我需要一种方法将其定位到它指向的当前行的开头。我参考了 java 文档,但找不到寻找指向文件开头的指针的方法。它确实有一个 readLine() 函数,但它会读取下一行。

0 投票
0 回答
609 浏览

android - 将虚拟数据写入外部存储android的选定文件

在下面提到的代码中,我将虚拟数据写入外部存储中存在的所有文件并重命名为“abc.txt”。但我想要的是仅将虚拟数据写入我选择并重命名该特定文件的那个文件。我该怎么办?

0 投票
3 回答
2112 浏览

java - 文件支持的 Java 映射

有没有一种简单的方法来获得文件支持的地图?

地图的内容会定期更新,有些会被删除,有些会被添加。为了保证地图中的数据安全,需要持久性。我知道数据库是理想的,但遗憾的是由于限制,无法使用数据库。

我努力了:

每次更新时将地图的全部内容写入文件。这行得通,但显然有一个缺点,即每次都重写整个文件,映射的内容预计从几个条目到 ~2000 不等。还有一些并发问题(即乱写导致数据丢失)。

使用RandomAccessFile并保留指向每个文件起始字节的指针,以便可以使用 seek() 查找每个条目。同样,这与以前有类似的问题,更改条目将涉及更新其之后的所有引用。

理想情况下,该解决方案将涉及某种缓存,以便仅将最近访问的条目保留在内存中。

有这样的事吗?还是可以通过第三方 jar 获得?有人建议使用 Oracle Coherence,但我似乎找不到太多关于如何实现它的信息,这似乎有点像用大锤敲碎坚果。

0 投票
1 回答
1127 浏览

java - java RandomAccessFile 参数

我正在尝试按照以下示例在此处找到它Java:查找文件的最后一行是否为空 以确定文件是否由 CRLF(空行)完成但是当我将字符串传递给方法 RandomAccessFile 时说文件未找到。问题是我无法将文件路径提供给它,但我将文件的内容作为字符串,所以我尝试使用 File f = new File(myString); 创建一个文件 然后将创建的文件传递给该方法,但它没有工作,它给了我同样的错误(找不到文件)(它认为文件的第一行是路径)!

如何从我的字符串中创建一个由 RandomAccessFile 接受的文件,该文件包含我要检查它是否由 CRLF 完成的文件的内容。

希望我很清楚。

0 投票
0 回答
761 浏览

java - RandomAccessFile 未关闭

我正在尝试重命名我可以通过 RandomAccessFile 访问的文件。当我在临时存档中进行所有我想要的更改时,我关闭了两个 RAF。但是当我尝试移动文件时,要重命名(替换)它说我的档案已被其他进程使用。

当应用程序运行时,我不能手动对存档做任何事情,但是当应用程序关闭时,我可以做任何我想做的事情。

我尝试使用其他方式,但没有奏效:

我看到了这个,但没有太多帮助。

0 投票
3 回答
449 浏览

java - txt文件中的数据被覆盖

该程序应该在 .txt 文件中创建许多空白记录,以后可以对其进行编辑以添加名称和余额等信息。我的问题是每当我输入另一条记录时,第一个帐户的余额就会消失(但名称不会)。如果我尝试添加另一个帐户,前一个帐户的余额也会消失。它可能被覆盖或其他东西。

我该如何解决?

0 投票
1 回答
8138 浏览

java - JAVA RandomAccessFile 在构造时抛出 IOException

我正在尝试使用以下代码访问文件以读取和写入文件:

它返回一个错误“找不到文件(IOException)”。

该文件存在,并且位于该文件夹中。我错过了什么?