Como converter arquivo JSON para CSV no Node.js

Converter arquivo JSON para CSV no Node.js

JSON(JavaScript Object Notation) é um formato padrão baseado em texto para armazenar e transmitir dados entre clientes web e servidores web. CSV(Valores separados por vírgula) também é um formato de arquivo de texto para armazenar os dados em um formato estruturado de tabela. Em certos casos, pode ser necessário importar objetos de dicionário para valores separados por vírgula em aplicativos Node.js. Para tais casos, este artigo demonstra como converter arquivo JSON para CSV no Node.js.

Os seguintes tópicos serão abordados neste artigo:

API REST de conversão JSON para CSV e SDK Node.js

A melhor maneira de converter JSON em CSV é usando a API Node.js SDK of GroupDocs.Conversion Cloud. É uma biblioteca independente de plataforma JSON para CSV e solução de conversão de documentos. Ele permite que você converta facilmente seus documentos e imagens de qualquer formato de arquivo suportado para qualquer formato que você precisar. Você pode converter facilmente entre mais de 50 tipos de documentos e imagens, como Word, PowerPoint, Excel, PDF, HTML, CAD, imagens raster, etc. Ele também fornece SDKs .NET, Java, PHP, Ruby, Android e Python como seus membros da família de conversão de documentos para a Cloud API.

Você pode instalar o GroupDocs.Conversion Cloud em seu projeto Node.js usando o seguinte comando no console:

npm install groupdocs-conversion-cloud

Obtenha seu ID de cliente e Segredo do cliente no painel antes de começar a seguir as etapas e os exemplos de código disponíveis. Depois de ter seu ID e segredo, adicione o código conforme mostrado abaixo:

# Importe o SDK do Node.js em seu aplicativo de nó de http://api.groupdocs.cloud
global.groupdocs_conversion_cloud = require("groupdocs-conversion-cloud");
global.fs = require("fs");

// obtenha clientId e clientSecret em https://dashboard.groupdocs.cloud (é necessário registro gratuito).
global.clientId = "xxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx";
global.clientSecret = "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx";
global.myStorage = "test-internal-storage";
const config = new groupdocs_conversion_cloud.Configuration(clientId, clientSecret);
config.apiBaseUrl = "https://api.groupdocs.cloud";

Como converter JSON para arquivo CSV no Node.js usando a API REST

Você pode converter json aninhado em csv em nodejs programaticamente na nuvem seguindo as etapas abaixo:

  1. Upload o arquivo JSON para a nuvem
  2. Converter nodejs JSON para arquivo CSV
  3. Baixar o arquivo CSV convertido

Carregar o arquivo JSON

Em primeiro lugar, carregue o arquivo JSON na nuvem usando o seguinte exemplo de código:

// abra o arquivo no IOStream da unidade do sistema.
var resourcesFolder = 'H:\\groupdocs-cloud-data\\sample-file.json';
// ler arquivo
fs.readFile(resourcesFolder, (err, fileStream) => {
  // construir FileApi
  var fileApi = groupdocs_conversion_cloud.FileApi.fromConfig(config);
  // criar solicitação de upload de arquivo
  var request = new groupdocs_conversion_cloud.UploadFileRequest("sample-file.json", fileStream, myStorage);
  // subir arquivo
  fileApi.uploadFile(request)
    .then(function (response) {
      console.log("Expected response type is FilesUploadResult: " + response.uploaded.length);
    })
    .catch(function (error) {
      console.log("Error: " + error.message);
    });
});

Como resultado, o arquivo JSON carregado estará disponível na seção de arquivos do seu painel na nuvem.

Converter JSON para o formato CSV no Node.js

Você pode converter json em nó csv programaticamente seguindo as etapas abaixo:

  • Crie uma instância do ConvertApi
  • Crie uma instância do ConvertSettings
  • Defina o nome do armazenamento e o caminho do arquivo JSON de entrada
  • Atribuir “csv” ao formato
  • Agora, forneça o caminho do arquivo csv de saída
  • Criar ConvertDocumentRequest com ConvertSettings
  • Converter chamando o método convertDocument() com ConvertDocumentRequest

O exemplo de código a seguir mostra como converter JSON em CSV no Nodejs usando a API REST:

const convert = async () => {
  const convertApi = groupdocs_conversion_cloud.ConvertApi.fromKeys(clientId, clientSecret);

  const settings = new groupdocs_conversion_cloud.ConvertSettings();
  settings.storageName = myStorage;
  settings.filePath = "nodejs-testing/sample-file.json";
  settings.format = "csv";
  settings.outputPath = "nodejs-testing/sample-file.csv";

  try {
    // Criar solicitação de conversão de documento
    const request = new groupdocs_conversion_cloud.ConvertDocumentRequest(settings);
    await convertApi.convertDocument(request);
  } 
  catch (err) {
    throw err;
  }
}

convert()
.then(() => {
  console.log("JSON file converted to CSV successfully");
})
.catch((err) => {
  console.log("Error occurred while converting the JSON file:", err);
})

Baixe o arquivo convertido

O exemplo de código acima salvará o arquivo CSV convertido na nuvem. Agora você sabe como converter JSON para CSV em node. Em seguida, baixe o arquivo csv usando o seguinte exemplo de código:

// construa FileApi para baixar o arquivo convertido
var fileApi = groupdocs_conversion_cloud.FileApi.fromConfig(config);
// criar solicitação de download de arquivo
let request = new groupdocs_conversion_cloud.DownloadFileRequest("nodejs-testing/sample-file.csv", myStorage);
// arquivo de download e tipo de resposta Stream
fileApi.downloadFile(request)
    .then(function (response) {
        // salve o arquivo no diretório do sistema
        fs.writeFile("H:\\groupdocs-cloud-data\\sample-file.csv", response, "binary", function (err) { });
        console.log("Expected response type is Stream: " + response.length);
    })
    .catch(function (error) {
        console.log("Error: " + error.message);
    });

Conversor JSON para CSV Grátis Online

Como converter JSON para CSV online grátis? Tente o seguinte para converter JSON grande em CSV online grátis, que é desenvolvido usando a API acima.

Conclusão

Arquivos JSON e CSV são amplamente usados para armazenar e transmitir os dados. De acordo com isso, este artigo abordou como transformar JSON em CSV em aplicativos Node.js. Agora você sabe:

  • como converter json para csv usando Node.js;
  • carregar e baixar programaticamente o arquivo csv convertido;
  • conversor online gratuito de json para csv;

Além disso, você pode aprender mais sobre GroupDocs.Conversion Cloud API usando a documentação. Também fornecemos uma seção Referência de API que permite visualizar e interagir com nossas APIs diretamente pelo navegador.

Faça uma pergunta

Você pode tirar suas dúvidas sobre como converter JSON em formato CSV, através do nosso Fórum de Suporte Gratuito

Veja também