如何从Ocaml的文件中读取行?

问题描述 投票:-2回答:1

我在OCaml上遇到了麻烦,因为我想从文本文件中读取行,并且我正在使用此代码来完成工作:

    let parse3ac() = 
    let lines = ref "" in
    let chan = open_in "3ac" in
    try
      while true do
        lines := input_line chan;
    print_string(!lines);
      done;
     with End_of_file -> close_in chan;print_string("End Of File");;

但是它仅在控制台的“ End Of File”中打印,但不会出现文件中的行。

此代码专家有什么问题?

共4个想法!

编辑:

实际上,我已经发现它不起作用的原因。这很简单,上面的代码工作得很好,但是我之前使用OCaml创建的文件“ 3ac”没有正确关闭,因此无法读取该文件。谢谢大家,就像我在代码生效之前所说的那样,每个人都可以使用它。

谢谢。

ocaml readfile
1个回答
1
投票

此代码有效,我对其进行了测试,并写入了文件3ac的行(不打印换行符,因为您不打印它们),然后写入“文件尾”。您确定文件3ac不为空吗?

© www.soinside.com 2019 - 2024. All rights reserved.