Solucionado (ver solução)
Solucionado
(ver solução)
4
respostas

Não entendi a classe FormatoArquivos

public enum FormatoArquivos
    {
        Xml=1,
        Json=2
    }

Não entendi como funciona essa classe e como ela esta sendo usada nesse trecho de codigo

 private static void ExportData(string caminho, FormatoArquivos formato, List<T> dados)
        {
            if(formato==FormatoArquivos.Xml)
4 respostas

Paulo,

Acho que consigo responder.

O Enum é um tipo de enumeração, ele é ótimo para ser usado com "valores discretos", quero dizer quando você tem algumas letras que o usuário deve escolher para algum cadastro, por exemplo tosco: Escolha o tipo de produto: "Alto" (1), "Baixo" (2). É um pouco diferente do conceito desta palavra na estatística.

Já a função "ExportData" recebe 3 parâmetros:

  1. O "caminho" é o diretório (pasta) onde o arquivo será salvo;
  2. O "formato" que foi definido no Enumerador e será escolhido pelo programador usuário da library;
  3. O "dados" são os dados propriamente ditos, as informações que serão passadas para serem gravadas.

Dependendo do tipo do Formato que será gravado "XML" ou "JSON", o IF separa o processamento.

Por favor, veja também:

===============================================================

Tipos de enumeração (referência de C#)

Um tipo de enumeração (ou tipo enum) é um tipo de valor definido por um conjunto de constantes nomeadas do tipo numérico integral subjacente. Para definir um tipo de enumeração, use a palavra-chave enum e especifique os nomes dos membros de enumeração:

enum Season
{
    Spring,
    Summer,
    Autumn,
    Winter
}

https://learn.microsoft.com/pt-br/dotnet/csharp/language-reference/builtin-types/enum

===============================================================

JSON vs XML

Both JSON and XML can be used to receive data from a web server.

https://www.w3schools.com/js/js_json_xml.asp

===============================================================

JSON vs XML – Difference Between Them

What is JSON?

What is XML?

https://www.guru99.com/json-vs-xml-difference.html

===============================================================

[]'s,

Fabio I.

entendi fabio obg pela resposta mais ainda estou com duvida por exemplo no if(formato==FormatoArquivos.Xml) essa variavel formato teria q receber o numero 1 ou a string "Xml" para o resultado do IF ser True?

Bom dia Paulo Henrique, tudo bom?

Então, esse formato deve receber um número inteiro. Por que como o Fábio trouxe mais acima, o enum é um tipo de valor definido por um conjunto de constantes nomeadas do tipo numérico.

Espero ter ajudado!

solução!

Paulo,

Exemplificando o que o André escreveu:

enum Months
{
  January,    // 0
  February,   // 1
  March,      // 2
  April,      // 3
  May,        // 4
  June,       // 5
  July        // 6
}

static void Main(string[] args)
{
  int myNum = (int) Months.April;
  Console.WriteLine(myNum);
}

Tente você mesmo (try it yourself) o código acima em:

===============================================================

C# Enum

https://www.w3schools.com/cs/cs_enums.php

===============================================================

Veja que você compara os conteúdos que são numéricos (4), mas a variável é invocada pelo nome (Months.April).

Experimente colocar um "if", desta forma:

Console.WriteLine("Digite um número de mês: ");

int meuMes = Convert.ToInt32(Console.ReadLine());

if (meuMes == (int)Months.July + 1)
    Console.WriteLine("Esse é o mês do meu aniversário!");
else
    Console.WriteLine("Um mês comum...");

Estou testando um software novo para mim, chama-se "Repl.It"... coloquei esse código lá, veja se você consegue ver:

https://replit.com/@FabioIngenito/TESTE-C

Clique no botão "SHOW CODE" e depois em "MAIN.CS" para ver o código.

[]'s,

Fabio I.