Este breve tutorial explica como converter arquivo JSON para Excel usando C# lendo JSON dados de qualquer fonte e salvando-os como um arquivo Excel, digamos XLSX depois de definir a formatação dos dados importados. Uma pasta de trabalho vazia ou existente será carregada e os dados JSON serão importados para uma célula inicial definida pelo usuário na planilha selecionada. Durante essa conversão de JSON para Excel em C#, você terá controle total sobre as configurações de fonte, exibição de grade, alinhamento de texto, configuração de página e vários outros parâmetros.
Etapas para converter arquivo JSON para Excel usando C#
- Adicione a referência à biblioteca Aspose.Cells do NuGet Package Manager para converter o arquivo JSON em Excel
- Crie um estilo para os títulos de dados JSON definindo propriedades diferentes, como alinhamento, cor da fonte e sinalizador em negrito
- Inicialize o objeto de classe JsonLayoutOptions usando o estilo acima e outros sinalizadores
- Crie um Workbook vazio e obtenha uma referência à planilha de destino
- Leia todo o conteúdo JSON em uma variável de string
- Chame a função ImportData da classe JsonUtility para converter a string JSON em Excel
- Salve o arquivo Excel de saída contendo dados JSON importados
Aqui, primeiro inicializamos os parâmetros de formatação opcionais necessários para os títulos no arquivo Excel de saída. Na próxima etapa, a pasta de trabalho é inicializada e a referência à planilha de destino é obtida. Por fim, os dados JSON de origem são carregados em uma variável de string e usados na função ImportData como um parâmetro junto com outras informações necessárias. Para exportar JSON para Excel C# o código de exemplo é demonstrado abaixo.
Código para converter JSON para Excel em C#
using Aspose.Cells; | |
using System.IO; | |
using Aspose.Cells.Utility; | |
namespace ConvertCsvToPdfUsingCSharp | |
{ | |
class Program | |
{ | |
static void Main(string[] args) | |
{ | |
// Instantiate the license at the beginning of the program to avoid trial version restrictions | |
License JsonToExcelLicense = new License(); | |
JsonToExcelLicense.SetLicense("Aspose.Cells.lic"); | |
// Create a style to format the json fields title in the output workbook | |
CellsFactory factory = new CellsFactory(); | |
Style jsonTitleStyle = factory.CreateStyle(); | |
jsonTitleStyle.HorizontalAlignment = TextAlignmentType.Center; | |
jsonTitleStyle.Font.Color = System.Drawing.Color.BlueViolet; | |
jsonTitleStyle.Font.IsBold = true; | |
// Declare and define the layout of the data imported from JSON to Excel | |
JsonLayoutOptions jsonLayoutOptions = new JsonLayoutOptions(); | |
jsonLayoutOptions.TitleStyle = jsonTitleStyle; | |
jsonLayoutOptions.ArrayAsTable = true; | |
// Initialize an empty workbook to import JSON data | |
Workbook emptyWbForJsonData = new Workbook(); | |
// Get reference to the worksheet where data is to be imported | |
Worksheet targetWorksheet = emptyWbForJsonData.Worksheets[0]; | |
// Read the Json file into a string variable that will be used to import date | |
string inputJsonString = File.ReadAllText("SampleJsonData.json"); | |
// Call the ImportData function to import JSON data into the worksheet | |
JsonUtility.ImportData(inputJsonString, targetWorksheet.Cells, 3, 5, jsonLayoutOptions); | |
// Save Excel file | |
emptyWbForJsonData.Save("SampleJsonToXlsx.xlsx"); | |
} | |
} | |
} |
Esse código usa CellsFactory para criar um estilo para os títulos de dados JSON de saída, definindo o alinhamento horizontal e as configurações de fonte que são usadas posteriormente no objeto JsonLayoutOptions. A função JsonUtility.ImportData() requer a string JSON de origem, referência à coleção Cells da planilha de destino, a primeira linha e coluna onde os dados devem ser importados e as opções de layout definidas no início do programa.
Este breve tutorial nos guiou como usar C# converter JSON para Excel. No entanto, se você quiser aprender a converter JSON em CSV, consulte o artigo em como converter JSON para CSV em C#.