-3

テキストファイルから行を読みたいので、私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");;

ただし、コンソールの「ファイルの終わり」にのみ出力されますが、ファイルの行は表示されません。

このコードの何が問題なのですか?

ありがとうございます!

編集:

実際、私はそれが機能しない理由を発見しました。非常に単純です。上記のコードは非常にうまく機能しますが、以前に を使用して作成したファイル「3ac」がOCaml適切に閉じられていなかったため、ファイルを読み取ることができませんでした。みんなありがとう。コードが機能する前に言ったように、誰もがそれを使用できるようにします。

ありがとう 。

4

1 に答える 1

1

このコードは機能し、テストしたところ、ファイル 3ac の行 (印刷しないため改行なし) が書き込まれ、次に「ファイルの終わり」が書き込まれます。ファイル 3ac は空ではありませんか?

于 2012-06-22T00:07:27.997 に答える