我正在尝试将.txt文件中的数据输入到方案结构中。每个元素由数据文件中的选项卡分隔,每个结构集都在一个新行上。我希望能够将数据从一行读入一个结构,并列出文件中的每个结构集。有什么建议吗?
答案 0 :(得分:6)
不确定您的想法是什么结构,但是说您有一个如下文本文件:
--> cat blah.txt foo bar baz 1 2 3 4 5 aa bb cc dd ee
您可以使用sed将其直接转换为方案中的列表列表:
--> echo "(define mylist '("`sed -e 's/\(.*\)/(\1)/' blah.txt`"))" > foo.txt
然后生成以下文件:
--> cat foo.txt (define mylist '((foo bar baz) (1 2 3 4 5) (aa bb cc dd ee)))
现在你所要做的就是将文件加载到方案中:
(load "foo.txt")
您可以通过`mylist'变量访问该结构。
答案 1 :(得分:3)
听起来像带有标签而不是逗号的CSV文件。如果你正在使用PLT Scheme(DrScheme / mzscheme) neil的csv库可能就是你想要的。
以下是如何远程加载它:
(require (planet neil/csv:1:2/csv))
至少,这就是指示所说的。在我稍微讽刺的DrScheme上,这是有用的:
(require (planet "csv.ss" ("neil" "csv.plt" 1 (= 1))))