1
resposta

[Dúvida] erro em sting

Meu codigo está travando na última linha desse trecho com o seguinte erro:"System.FormatException: 'The input string '' was not in a correct format.''

void ExibirOpcoesDoMenu() { ExibirLogo(); Console.WriteLine("\nDigite 1 para registrar uma banda"); Console.WriteLine("Digite 2 para mostrar todas as bandas"); Console.WriteLine("Digite 3 para avaliar uma banda"); Console.WriteLine("Digite 4 para exibir a média de uma banda"); Console.WriteLine("Digite -1 para sair"); Console.Write("\n Digite a sua opção:"); string opcaoEscolhida = Console.ReadLine()!; int opcaoEscolhidaNumerica = int.Parse(opcaoEscolhida);

1 resposta

Adriana,

Peguei o código acima que você disponibilizou e percebi que faltou um "fecha colchetes" ( } ) na última linha, mas não sei se o erro era esse mesmo. Está assim:

void ExibirOpcoesDoMenu()
{
    ExibirLogo();
    Console.WriteLine("\nDigite 1 para registrar uma banda");
    Console.WriteLine("Digite 2 para mostrar todas as bandas");
    Console.WriteLine("Digite 3 para avaliar uma banda");
    Console.WriteLine("Digite 4 para exibir a média de uma banda");
    Console.WriteLine("Digite -1 para sair"); 
    Console.Write("\n Digite a sua opção:");
    string opcaoEscolhida = Console.ReadLine()!;
    int opcaoEscolhidaNumerica = int.Parse(opcaoEscolhida);

O código completo é este:

void ExibirOpcoesDoMenu()
{
    ExibirLogo();
    Console.WriteLine("\nDigite 1 para registrar uma banda");
    Console.WriteLine("Digite 2 para mostrar todas as bandas");
    Console.WriteLine("Digite 3 para avaliar uma banda");
    Console.WriteLine("Digite 4 para exibir a média de uma banda");
    Console.WriteLine("Digite -1 para sair");

    Console.Write("\nDigite a sua opção: ");
    string opcaoEscolhida = Console.ReadLine()!;
    int opcaoEscolhidaNumerica = int.Parse(opcaoEscolhida);

    switch (opcaoEscolhidaNumerica)
    {
        case 1:
            RegistrarBanda();
            break;
        case 2:
            Console.WriteLine("Você escolheu a opção " + opcaoEscolhidaNumerica);
            break;
        case 3:
            Console.WriteLine("Você escolheu a opção " + opcaoEscolhidaNumerica);
            break;
        case 4:
            Console.WriteLine("Você escolheu a opção " + opcaoEscolhidaNumerica);
            break;
        case -1:
            Console.WriteLine("Tchau ;) ");
            break;
        default:
            Console.WriteLine("Opção inválida");
            break;
    }
}

Faltou o "switch" para direcionar a escolha do usuário, certo?

Estudando um pouco o erro:

  • error: "System.FormatException: 'The input string ' '' was not in a correct format.''
  • error:"System.FormatException: 'A string de entrada' '' não estava no formato correto.''

O que ou qual "string" NÃO está no formato correto?

Err... talvez alguma conversão do ".Parse()"?

Por favor, abaixo coloquei um texto e um vídeo, veja o vídeo, eu achei mais interesssante. É um lance de conversão de valores mesmo...

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

Input string was not in a correct format

https://stackoverflow.com/questions/8321514/input-string-was-not-in-a-correct-format

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

C-Sharp erro - Input string was not in a correct format

15 de mar. de 2020 C-Sharp C#

UniversoTi

Input string was not in a correct format. Como corrigir?

Erro muito comum com desenvolvedores C-Sharp

Vamos explicar como ocorre e o motivo!

Hoje vou demonstrar na prática

https://youtu.be/9BVdO4yy-bA?si=SgCL-ai_ID9ESuLV

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

Espero ter ajudado e se ajudei e resolveu sua dúvida, NÃO esqueça de fechar este tópico e me pontuar se gostou da minha resposta.

[]'s,

Fabio I.

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software