Exemplo de como criar e ler um arquivo json em C#

Pré-requisito: Possuir uma classe que represente o seu Json.


public class ArquivoJson
{
  private static ArquivoJson instancia;

  public string Config1 { get; set; }
  public string Config2 { get; set; }

  public static ArquivoJson PegarInstancia()
  {
    if (instancia == null)
    {
      instancia = new ArquivoJson();
    }
    return instancia;
  }
}

Neste exemplo, ao inicializar o sistema, verifico se o arquivo "config.json" existe na raíz do sistema e se não existir, é criado este arquivo.

Caso o arquivo já exista, carrega-o.


namespace AppExemplo
{
  public partial class MainWindow
  {
    ArquivoJson arquivoJson;

    private void InicializarSistema(object sender, RoutedEventArgs e)
    {
      if (!File.Exists("config.json"))
      {
        CriarArquivoJson();
      }

      string jsonString = File.ReadAllText("config.json");

      arquivoJson = ArquivoJson.PegarInstancia();
      arquivoJson = JsonSerializer.Deserialize(jsonString);

      // Agora sua classe arquivoJson já está carregada e pronta para uso
      textConfig1.Text = arquivoJson.Config1;
    }

    private void CriarArquivoJson()
    {
      arquivoJson = ArquivoJson.PegarInstancia();
      arquivoJson.Config1 = "exemplo1";

      GravarJson();
    }

    private void GravarJson()
    {
      var opcoesJson = new JsonSerializerOptions
      {
        WriteIndented = true
      };

      string jsonString = JsonSerializer.Serialize(arquivoJson, opcoesJson);
      File.WriteAllText("config.json", jsonString);
    }
  }
}

Nenhum comentário:

Postar um comentário