Разбор очень простого CSV и печать первого столбца в F # - PullRequest
0 голосов
/ 05 марта 2019

Я пытаюсь написать следующий код C # для F #:

List<string> addresses = File.ReadLines(CsvPath).Select(x => x.Split(';')[0]).Distinct().ToList();
addresses.ForEach(a => Console.WriteLine(a));

Вот что я придумал:

let addresses = File.ReadLines(CsvPath) |> Seq.iter (fun s1 ->
    s1.Split [|';'|].[0]
    |> Console.WriteLine
)

Однако это выводит System.String[] вместо первого строкового значения строки ...

1 Ответ

0 голосов
/ 05 марта 2019

Вы должны поместить аргумент s1.Split в скобки, чтобы на самом деле индексировать результат, а не аргумент.

let addresses = 
    File.ReadLines(CsvPath)
    |> Seq.iter (fun s1 ->
        s1.Split([|';'|]).[0]
        |> Console.WriteLine)
...