Я хочу получить список чисел, присутствующих в файле в определенном формате.Но я не получил никакого формата (например,% s% d) для списка чисел.
Мой файл содержит следующий текст:
[1;2] [2] 5
[45;37] [9] 33
[3] [2;4] 1000
Я попробовал следующее
value split_input str fmt = Scanf.sscanf str fmt (fun x y z -> (x,y,z));
value rec read_file chin acc fmt =
try let line = input_line chin in
let (a,b,c) = split_input line fmt in
let acc = List.append acc [(a,b,c)] in
read_file chin acc fmt
with
[ End_of_file -> do { close_in chin; acc}
];
value read_list =
let chin = open_in "filepath/filename" in
read_file chin [] "%s %s %d";
Проблема с форматом, указанным ближе к концу.Я использовал тот же код для получения данных из какого-то другого файла, где данные были в формате (строка * строка * int).
Чтобы повторно использовать тот же код, я должен получить вышеуказанный текст в строке, а затемразделить по моему требованию.Мой вопрос: существует ли такой формат, как% s% d для списка целых чисел, так что я получаю список непосредственно из файла вместо того, чтобы писать другой код для преобразования строки в список.