SML - 读取文件并转换为数据类型

时间:2016-09-29 15:20:10

标签: file sml

我定义了数据类型

datatype DT = D1 of string 
    | D2 of string 
    | D3 of string 
    | D4 of string*string

在文件中有一些数据,如

D1("str1")
D4("str2","str3")
...

我需要一个包含此文件数据的列表。但是当我读取文件时,类型列表是字符串...我怎样才能使这个列表类型" DT类型"?

Data.txt
D1("str1")
D4("str2","str3")
D2("str4")



datatype DT = D1 of string 
    | D2 of string 
    | D3 of string 
    | D4 of string*string

val infile = "Data.txt" ;
fun readlist (infile : string) =
    let 
      val ins = TextIO.openIn infile 
      fun loop ins = 
          case TextIO.inputLine ins of 
            SOME line => line :: loop ins 
          | NONE      => [] 
    in 
      loop ins before TextIO.closeIn ins 
    end;

0 个答案:

没有答案