.txt文件大小是否有上限?

时间:2008-12-24 16:47:27

标签: memory text-files primes filesize

作为圣诞礼物,我用Java编写了一个小程序来计算素数。我的目的是让它彻夜不眠,计算下一个素数并将其写入.txt文件。早上我会杀了这个程序并将.txt文件带给我的朋友过圣诞节。

有什么我应该担心的吗?请记住,这是真正的初学者Ziggy,你正在谈论,而不是一些聪明的错误检查ASM家伙。

编辑更具体地说,因为我将把所有夜间计数素数留给这个程序,有没有机会我会遇到某种与记忆相关的错误?比如堆叠破碎堆或狗和猫睡在一起?

编辑甚至更具体地说,当文件大小为4GB时,是否有一行代码可以用来停止打印行?为了安全起见?

编辑:成功:在整夜离开之后,我得到的素数不超过13 KB,我得到的最高值是22947217,就像成千上万的素数一样。成功了!

11 个答案:

答案 0 :(得分:17)

我建议为您计算的每个素数发送短信。你的朋友比一堆纸要好得多。此外,他可以更频繁地更新。

答案 1 :(得分:8)

有很多限制,但它们都不是.txt文件固有的:

  • Windows 9x记事本无法打开文件> 64KB。
  • Windows NT / 2k / etc的记事本没有限制,但往往会阻塞并锁定多兆字节文件。您还需要记住大多数文本编辑器都是哑巴,并尝试将整个文件读入RAM。
  • 许多软件仅限于2GB或4GB文件,具体取决于它们是使用有符号还是无符号注册 - 因为有人已经提到过FAT32是犯了这个错误。

答案 2 :(得分:6)

您很可能使用的是慢速算法。随着素数越来越大,你的程序将花费更长的时间来计算单个素数。如果你让它运行一夜,文本文件在早上不会很大。如果它超过几个megs,我会留下深刻的印象。

答案 3 :(得分:2)

从技术上讲,除了文件系统放在你身上之外没有任何限制。然而,记事本对于打开淫秽的大文件真的很不自在。

答案 4 :(得分:2)

您可以考虑跟踪写入每个文件的字节数,并在一定数量的字节后切换到新文件。您还可以为您的文件提供查看器,以便您的朋友可以更轻松地查看他的礼物。 :)

答案 5 :(得分:1)

如果内存服务,FAT32的文件限制大小为4gig。

答案 6 :(得分:1)

齐格 -

我喜欢这个:“没有一些聪明的错误检查ASM家伙。”你在描述我们所有人!

有足够的磁盘空间并写下来!如前所述,请确保用于打开文件的编辑器可以打开非常大的文件。

节日快乐,真正的初学者Ziggy。

答案 7 :(得分:0)

仅限于您​​将文本文件存储在磁盘上的位置。

而且,如果你没有立刻写下它,你的记忆+虚拟记忆。

答案 8 :(得分:0)

如何保存一些CPU周期并只下载预先计算的list of primes?还是更“重要的思想”? :)

答案 9 :(得分:0)

如何为每个素数创建一个文件,然后使用文件名显示数字?

答案 10 :(得分:0)

不知怎的,我怀疑当你的程序在一夜之间运行时,文件大小将是一个问题,考虑到随着数字变大需要更长时间才能找到素数。只要确保你清理干净,否则你可能会吃掉所有的RAM。

回答你的问题:从理论上讲,文件系统会限制文件大小。但是,在加载大文件(> 100 MB)时,很多文本编辑器都崩溃了(vim没有),因为他们试图将它放在一个缓冲区中。

总而言之,请考虑将文件拆分为最薄弱的链接(文本编辑器)可以处理的块。