Trabalhando com JSON e XML
Processe dados estruturados usando JSON e XML em aplicativos C#
Trabalhando com JSON e XML é uma aula grátis de C# Academy no CoddyKit. Esta é a aula 2 de 5. Você pode ler a aula completa abaixo gratuitamente — depois pratica ao vivo no navegador com um editor de código integrado e um tutor de IA 24/7. Faz parte do caminho de aprendizado de C# Academy, e seu progresso é sincronizado entre a web e o app CoddyKit. O curso de C# Academy inclui 5 aulas no total.
Introdução a JSON e XML
Trabalhando com JSON e XML
Bem-vindo à próxima lição! Nesta lição, você aprenderá a trabalhar com JSON e XML em C#, dois formatos comuns para armazenar e trocar dados. Vamos começar!

O que é JSON?
O que é JSON?
JSON (JavaScript Object Notation) é um formato leve para troca de dados. Ele é fácil de ler e gravar para as pessoas e fácil de analisar e gerar para as máquinas.
Exemplo:
{
"name": "Alice",
"age": 25,
"city": "New York"
}
Dica: JSON é comumente usado em APIs e na troca de dados entre aplicativos.
Trabalhando com JSON em C#
Trabalhando com JSON em C#
Você pode usar o namespace System.Text.Json para trabalhar com JSON em C#. Exemplo:
Ponto principal: Use JsonSerializer para um processamento de JSON simples e eficiente.
using System;
using System.Text.Json;
class Program {
static void Main() {
string json = "{\"name\":\"Alice\",\"age\":25,\"city\":\"New York\"}";
// Deserialize JSON to an object
var person = JsonSerializer.Deserialize<Person>(json);
Console.WriteLine($"Name: {person.Name}, Age: {person.Age}, City: {person.City}");
// Serialize an object to JSON
string newJson = JsonSerializer.Serialize(person);
Console.WriteLine("Serialized JSON: " + newJson);
}
}
class Person {
public string Name { get; set; }
public int Age { get; set; }
public string City { get; set; }
}
O que é XML?
O que é XML?
XML (eXtensible Markup Language) é um formato de texto flexível para dados estruturados. Ele é comumente usado para armazenamento de dados e arquivos de configuração.
Exemplo:
Alice 25 New York
Dica: XML é mais detalhado que JSON, mas oferece suporte a estruturas e metadados mais complexos.
Trabalhando com XML em C#
Trabalhando com XML em C#
Você pode usar o namespace System.Xml para trabalhar com XML em C#. Exemplo:
Ponto principal: Use XmlSerializer para converter objetos para XML e a partir de XML.
using System;
using System.Xml.Serialization;
using System.IO;
class Program {
static void Main() {
string xml = "<Person><Name>Alice</Name><Age>25</Age><City>New York</City></Person>";
// Deserialize XML to an object
var serializer = new XmlSerializer(typeof(Person));
using (var reader = new StringReader(xml)) {
var person = (Person)serializer.Deserialize(reader);
Console.WriteLine($"Name: {person.Name}, Age: {person.Age}, City: {person.City}");
}
// Serialize an object to XML
var newPerson = new Person { Name = "Bob", Age = 30, City = "San Francisco" };
using (var writer = new StringWriter()) {
serializer.Serialize(writer, newPerson);
Console.WriteLine("Serialized XML: " + writer.ToString());
}
}
}
public class Person {
public string Name { get; set; }
public int Age { get; set; }
public string City { get; set; }
}
JSON versus XML
JSON versus XML
Veja uma comparação entre JSON e XML:
- JSON: Leve, fácil de ler e gravar, ideal para APIs e aplicativos modernos.
- XML: Mais detalhado, oferece suporte a estruturas complexas e é amplamente usado em sistemas legados e configurações.
Dica: Escolha o formato com base no seu caso de uso e na complexidade dos dados.
Desafio prático
Desafio prático
Crie um programa que serialize uma lista de objetos nos formatos JSON e XML e, em seguida, os desserialize novamente para objetos. Exemplo:
using System;
using System.Collections.Generic;
using System.Text.Json;
using System.Xml.Serialization;
using System.IO;
class Program {
static void Main() {
var people = new List<Person> {
new Person { Name = "Alice", Age = 25, City = "New York" },
new Person { Name = "Bob", Age = 30, City = "San Francisco" }
};
// Serialize to JSON
string json = JsonSerializer.Serialize(people);
Console.WriteLine("JSON:\n" + json);
// Serialize to XML
var serializer = new XmlSerializer(typeof(List<Person>));
using (var writer = new StringWriter()) {
serializer.Serialize(writer, people);
Console.WriteLine("XML:\n" + writer.ToString());
}
}
}
public class Person {
public string Name { get; set; }
public int Age { get; set; }
public string City { get; set; }
}
Práticas recomendadas para JSON e XML
Práticas recomendadas para JSON e XML
Veja algumas práticas recomendadas:
- Use JSON para trocas de dados leves e legíveis para as pessoas.
- Use XML para estruturas complexas e configurações com muitos metadados.
- Use Validate nos formatos de dados para garantir a compatibilidade.
Dica: Use bibliotecas como Newtonsoft.Json para processamento avançado de JSON quando necessário.
Revisão de JSON e XML
Muito bem!
Parabéns! Você aprendeu a trabalhar com JSON e XML para armazenar e trocar dados em C#. Na próxima lição, exploraremos o tratamento de exceções para tornar seus programas mais robustos. Continue programando!

Perguntas Frequentes
A aula “Trabalhando com JSON e XML” é grátis?
Sim — o texto completo de “Trabalhando com JSON e XML” é grátis para ler aqui na web. Para praticá-la interativamente (um editor de código integrado e um tutor de IA 24/7) e desbloquear o restante do curso de C# Academy, atualize para CoddyKit PRO. O curso de C# Academy inclui 5 aulas no total.
O que vou aprender em “Trabalhando com JSON e XML”?
Processe dados estruturados usando JSON e XML em aplicativos C# Você pratica C# Academy com código prático que executa diretamente no navegador, e um tutor de IA 24/7 responde suas dúvidas enquanto trabalha na aula.
Preciso ter experiência prévia para começar C# Academy?
Nenhuma experiência prévia é necessária. C# Academy no CoddyKit é estruturado para alunos iniciantes até avançados, então você pode começar aqui ou desde o início e aprender no seu ritmo. Esta é a aula 2 de 5.
Quanto tempo leva a aula “Trabalhando com JSON e XML”?
A maioria das aulas CoddyKit leva cerca de 5–10 minutos. Cada uma é compacta e interativa, então você faz progresso constante e retoma exatamente de onde parou entre web e app.
Posso escrever e executar código nesta aula de C# Academy?
Sim. Cada aula de C# Academy inclui um editor de código integrado, então você escreve e executa código real direto no navegador e recebe feedback de IA instantaneamente — nenhuma configuração local necessária.
Todas as aulas deste curso
- Lendo e gravando arquivos
- Trabalhando com JSON e XML
- Entendendo o tratamento de exceções
- Trabalhando com bancos de dados
- Usando LINQ para consultas de dados