gpt4 book ai didi

java - 生成大量字母以供将来操作的最佳方法

转载 作者:行者123 更新时间:2023-12-01 05:19:36 25 4
gpt4 key购买 nike

我正在尝试生成 40 亿个从 A-H 范围内的随机字符实例,然后将其全部存储到 Java 中的文本文件中。我尝试了迭代的基线方法,直到计数器达到 4B,但我发现它总是会导致内存问题。

我想知道将字母存储为位而不是将其原始值存储为字符是否会更有效。比如下面这样:

A <- 000, B <- 001, C <- 010, D <- 011, E <- 100, F <- 101, G <- 110, H <- 111

如果是这样,我该怎么做?

<小时/>

展望 future ,一旦我有了一个包含所有这些随机生成的字母的文本文件,打开该 txt 文件进行进一步修改的最佳方法是什么?例如替换或附加一些字符。我研究了 Java 的教程,认为随机访问文件可以解决问题,但是有更好的选择吗?

我是否应该在字符串中每 n 个字母添加一个换行符,以允许读取换行符函数作为停止点?

我想简明地陈述我的问题,如下:如何有效地将 40 亿个随机有限字母(并非全部 26 个)生成到文本文件中,以便也可以读取和修改以供将来使用?

最佳答案

首先,如果您想优化存储,请使用byte类型。您不需要更改任何内容,因为字节可以以其原始值存储字母。

对于原始保存来说,最好的办法是使用 FileOutputStream 并“分页”生成,例如每 100 MB 写入一次。

为了进一步实现文件,RandomAccessFile 就可以了。我认为添加新行不会有任何好处,因为您已经知道文件中每个“信息单元”的长度,添加新行只会重复存储空间。

希望我能说清楚(并且有意义):)

告诉我进展如何。

关于java - 生成大量字母以供将来操作的最佳方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10628675/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com