gpt4 book ai didi

list - 如何将一个巨大的文件加载到 Racket 中的字符串或列表中?

转载 作者:行者123 更新时间:2023-12-05 04:11:45 31 4
gpt4 key购买 nike

我有一个巨大的文件需要对其进行操作。巨大的约。半百万字。

我只是想将它读入一个列表或字符串中,这样我以后可以用它做一些事情。

我还知道我可以使用 file->string 或使用 file->list、file->lines 将其加载到字符串中,但这些似乎花费了太多时间。

这是将它加载到列表中的正确方法吗?:

(define my-list (with-input-from-file "myFile.txt" read))

每当我运行我的程序时,我只会打印出第一行。不过似乎适用于较小的文件。

最佳答案

我有一种强烈的感觉,你的问题不是读取字符串,而是打印出来

具体来说,读取这种大小的文件大约需要 0.03 秒。

我使用这个程序生成了一个文件:

#lang racket

(define str
"Beebe a reeble to one niner big druppy bonker watz. ")

(with-output-to-file "/tmp/foo.txt"
(λ ()
(for ([i (in-range (/ 500000 10))])
(displayln str))))

然后,我是这样读进去的:

#lang racket

(define a (time (file->string "/tmp/foo.txt")))

... 并产生了这个输出:

cpu time: 30 real time: 30 gc time: 17

....表示30毫秒。

请注意,因为我将 file->string 包装在 define 中,所以我没有打印出整个内容。那会花很长时间。

关于list - 如何将一个巨大的文件加载到 Racket 中的字符串或列表中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42028610/

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