[JavaScript]Utilize arquivos CSV no servidor convertidos para JSON.

この記事は約4分で読めます。
スポンサーリンク

Coisas que eu quero fazer

O arquivo CSV no servidor é convertido para JSON no lado do cliente e utilizado lá.

A biblioteca utilizada é a node-csvtojson. O Node.js precisa estar instalado.

GitHub - Keyang/node-csvtojson: Blazing fast and Comprehensive CSV Parser for Node.JS / Browser / Command Line.
Blazing fast and Comprehensive CSV Parser for Node.JS / Browser / Command Line. - GitHub - Keyang/node-csvtojson: Blazing fast and Comprehensive CSV Parser for...

Como todos os dados serão baixados para o cliente, considere métodos alternativos caso esteja lidando com dados sensíveis, como informações de usuários ou grandes volumes de dados.

スポンサーリンク

Preparar

Instale o csvtojson executando o seguinte comando no diretório raiz do projeto.

npm e csvtojson
スポンサーリンク

implementação

A implementação é a seguinte:

import csv from "csvtojson"

const convertCsv2Json = (txt) => {
  csv().fromString(txt).then(
    csv_data => {
      console.log(csv_data);
    }
  )
}

const fetchSetting = async (url) => {
  fetch(url).then(res => res.text().then(txt => convertCsv2Json(txt)));
}

fetchSetting("/setting.csv")

A função `fetchSetting` baixa um arquivo CSV e, em seguida, chama a função `convertCsv2Json`. (O argumento `/setting.csv` é a URL do arquivo CSV; altere-o conforme necessário.)

O convertCsv2Json converte arquivos CSV baixados em JSON.

Os dados convertidos para JSON podem ser usados ​​como `csv_data` na seguinte função.

    csv_data => {
      console.log(csv_data);
    }

Os caracteres japoneses podem aparecer ilegíveis. Salve o arquivo CSV no formato UTF-8.

Exemplo

Aqui estão exemplos de entrada em CSV e saída em JSON.

A primeira linha é considerada o título.

/configuração.csv

Nome, Idade, País
Taro, 25, Japão
Tom, 21, EUA

dados csv

Outros métodos de saída

Você pode alterar a saída passando argumentos para a função csv().

csv({ noheader: true, output: csv })

Com essa configuração, a primeira linha também é tratada como dados, e os dados são salvos como uma matriz.

/configuração.csv

Nome, Idade, País
Taro, 25, Japão
Tom, 21, EUA

dados csv

csv({ saída: linha })

Com essa configuração, os dados serão salvos como uma única string.

/configuração.csv

Nome, Idade, País
Taro, 25, Japão
Tom, 21, EUA

dados csv

コメント

タイトルとURLをコピーしました