从方案中的文件创建列表

发布于 2024-09-29 00:55:07 字数 190 浏览 2 评论 0 原文

我已经弄清楚了如何读取文件,并且使用以下代码进行工作:

(define p (read(open-input-file "starbucks4.sxml")))

但是如何将 p 存储为一个列表,其中元素由 \n 字符分隔。

谢谢。

I've worked out how to read in the file and it works using the following code:

(define p (read(open-input-file "starbucks4.sxml")))

But how do i store p as a list with elements separated by \n characters.

Thanks.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

望她远 2024-10-06 00:55:07

如果您使用 Racket(或 PLT 方案),则可以使用 读取-line 函数读取文件的每一行来获取它们——但它们不会被读取为 s-exp,每个都只是一个字符串。

If you're using Racket (or PLT Scheme), you can use the read-line function to read each line of the file to get them -- but they won't be read as s-exps, each will simply be a string.

或十年 2024-10-06 00:55:07

IIRC,MIT Scheme 和 Racket,以及其他一些实现,都具有 call-with-input-file 和 call-with-output-file 函数。有关其用法和 .org/software/mit-scheme/documentation/mit-scheme-ref/File-Ports.html" rel="nofollow noreferrer">此 以获得完整参考。

对于 \n 分隔列表,我知道的最好方法是使用 Common Lisp 风格 格式化功能。但如果您的实现没有这样的功能,您将需要手动中断列表并使用 write 函数打印它。

IIRC, both MIT Scheme and Racket, as far as some other implementations, have functions call-with-input-file and call-with-output-file. See this for details of their usage and this for complete reference.

As for a \n separated list, the best approach I know is using Common Lisp style format function. But if your implementation does't have such function, you will need to manually break your list and print it using write function.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文