【发布时间】:2022-01-21 18:24:41
【问题描述】:
我有一个包含以下内容的 .txt 文件:
d3%~19^fgh54 78nm,.j 1.2k~789bv
这是我的代码:
fun parse(L) =
let
val infile = TextIO.openIn(L)
fun read(infile) =
if TextIO.endOfStream(infile) then " " else (valOf(TextIO.inputLine(infile))) ^ read(infile);
fun split(S) = explode(S)
in
split(read(infile))
end;
这是我得到的输出: [#"d",#"3",#"%",#"~",#"1",#"9",#"^",#"f",#"g",#"h" ,#"5",#"4",#"",#"7",#"8", #"n",...] : 字符列表
我不明白为什么explode 不会把它给出的整个字符串变成一个char 列表。
【问题讨论】:
-
你能解释一下为什么你认为它没有把整个字符串变成一个字符列表吗?仅仅是因为打印输出的缩写吗?
-
我唯一能想到的是,explode 函数对于给它的字符串的长度是有限制的。我用 .txt 试了一下,它只是字母表,它只是在字母 p 之后停止。