Elm:
Работа с CSV

Как это сделать:

В Elm нет встроенного анализатора CSV, но вы легко можете добавить его, используя пакет, например, elm-csv. Вот быстрый пример анализа данных CSV:

import Csv

csvData : String
csvData =
    "name,age\nAlice,30\nBob,25"

parseCsv : String -> Result Csv.Error (List (List String))
parseCsv data =
    Csv.decode data

main =
    case parseCsv csvData of
        Ok rows ->
            -- что-то делать с рядами
            text (String.join "," (List.head rows |> Maybe.withDefault []))
            
        Err error ->
            -- обработка ошибки
            text (Csv.Error.toString error)

Пример вывода для успешного случая, отображение заголовков:

name,age

Подробнее

CSV существует с начала 1970-х; он настолько прост, что появился раньше реальных стандартов. Альтернативы включают JSON и XML, но CSV по-прежнему предпочтителен при работе с табличными данными, где много числовой информации и мало структуры. В Elm, поскольку это язык для фронтенда, вы будете работать либо получая CSV от бэкенда, либо обрабатывая локальный файл, загруженный пользователем. Реализация этого требует знаний о портах Elm для интероперабельности с JS или о пакете для загрузок файлов.

Смотрите также

  • Руководство Elm по взаимодействию с JavaScript: Порты Elm