Ir ao conteúdo
  • Cadastre-se

C# Como usar C# de forma mais eficiente?


Felipecfk
Ir à solução Resolvido por arfneto,

Posts recomendados

Toda vez que eu estou fazendo exercício com float ou double eu preciso ficar colocando (var é o nome genérico da variável)

var.ToString(CultureInfo.InvariantCulture)

na entrada e na saída, além de ter que puxar

using System.Globalization

para o programa entender ponto "." ao invés de vírgula "," Deve ter alguma forma mais fácil do programa entender pontos de forma automática. Alguém sabe?

  • Curtir 1
Link para o comentário
Compartilhar em outros sites

1 hora atrás, codigo rápido disse:

Descupa. Parece que não é difícil resolver isso, mas realmente faz tempo que não pego c#. Nem windows eu tenho mais. a anos... então visual studio ou o compilador em linha de comando... nem pensar pra mim...

Ta tranquilo, depois eu vejo isso melhor. É alguma coisa na instalação que ele pega o padrão português de vírgula ao invés do inglês. Você está usando quais linguagens atualmente?

  • Curtir 1
Link para o comentário
Compartilhar em outros sites

5 horas atrás, Felipecfk disse:

Você está usando quais linguagens atualmente?

Eu fiquei longe da computação (trabalho) por uns 6 anos. Só programaei pra mim mesmo algumas poucas coisas em várias linguagens como Java e javaScript. Eu estou brigando com uma depressão profunda. Por isso me mantive mais focado em trabalhos mais manuais. Eu sempre gostei de estudar processos industriais e eletronica. No momento estou relembrando o C. Mas eu já trabalhei com umas 9 linguagens.
 

  • Curtir 2
Link para o comentário
Compartilhar em outros sites

  • Solução
Em 19/09/2021 às 17:27, Felipecfk disse:

Toda vez que eu estou fazendo exercício com float ou double eu preciso ficar colocando (var é o nome genérico da variável)

 

Pois é. Seu sistema roda talvez Windows em português e está configurado para usar o sistema métrico, separar os milhares com . e os decimais com vírgula? 

 

O sistema está tentando ajudar você. Se é "ineficiente" para o seu caso mude as configurações... O simples. 

 

Se usa Windows 10 pode apertar o botão iniciar e escrever "mudar região" e vai ver isso
 

image.png.01c738a62db83b7e2b665ece4214bd30.png

 

 

image.png.f97e7db0e1f6294f3f451f3998a9e6f9.png

Ou pode apertar Windows+C e perguntr para a Cortana em português: "Como mudar as configurações Regionais?" e ela vai te falar em português enquanto mostra o texto ao lado

 

 

 

 

 

 

 

 

 

 

:) 

 

 

 

 

 

 

 

 

 

 

 

 

 

E te todo modo vai acabar nessa janela

 

image.png.67910508537f07e2fe2c144587338430.png

 

 

Onde você pode mudar o que achar mais eficiente.

 

No entanto isso vale de imediato para todos os programas, afinal trata-se de um padrão.

 

Você pode criar várias localidades com o nome que quiser e dar nomes e usar em seus programas, e para isso usa

aquela classe a que se referiu.

 

 

 

 

 

 

 

 

 

Isso também vale para a classe CultureInfo. E onde está a documentação daquilo? 

 

Está onde está a absolutamente extensa documentação do fabricante. 

 

E você pode ver exemplos em português, apesar de constantes tropeços do mecanismo de tradução, em https://docs.microsoft.com/pt-br/dotnet/api/system.globalization.cultureinfo?view=net-5.0 ou de acordo com a versão de .Net que use. No entanto acho que até a versão 6.0 e desde sempre nada tem mudado. E nem no Windows porque aquela tela que eu mostrei já tinha residência no Windows 95.

 

Um exemplo que está em https://docs.microsoft.com/pt-br/dotnet/api/system.globalization.cultureinfo?view=net-5.0 começa por

 

  public static void Main()
   {

      // Creates and initializes the CultureInfo which uses the international sort.
      CultureInfo myCIintl = new CultureInfo("es-ES", false);

      // Creates and initializes the CultureInfo which uses the traditional sort.
      CultureInfo myCItrad = new CultureInfo(0x040A, false);

      // Displays the properties of each culture.

...

 

 

E acho que já entendeu que pode criar uma classe que define seu CultureInfo e importar no início para não ter que mudar no sistema. 

 

E claro que pode escrever um script de 2 linhas e deixar um atalho no "acesso rápido" do Windows e que muda para de e para os locais que queira. 
 

image.png.b4d4c02e43068b2caf15ac69c0dcff26.png

Tudo vai dar no mesmo lugar, as configurações regionais do Windows e a CultureInfo no C# vão acabar em alguma estrutura interna do sistema e uma função em C.

  • Obrigado 1
Link para o comentário
Compartilhar em outros sites

Em 21/09/2021 às 20:33, arfneto disse:

E acho que já entendeu que pode criar uma classe que define seu CultureInfo e importar no início para não ter que mudar no sistema. 

 

Sim, era isso que eu estava procurando, uma opção dentro do próprio programa, pra declarar uma vez e depois não precisar novamente. Apesar que alterar configurações de idioma funciona até melhor porque aí o programa fica até mais limpo. Mas vou testar as duas de qualquer forma porque nem sempre convém ficar alterando configurações de idioma pelo windows.

 

Citação

E claro que pode escrever um script de 2 linhas e deixar um atalho no "acesso rápido" do Windows e que muda para de e para os locais que queira. 

É, mas aí fica meio gambiarra. Mas obrigado pelas inúmeras soluções.

De fato eu deveria ter lido melhor a documentação, é que eu presumi que lá estaria da mesma forma que estou fazendo agora: tendo que converter o double na saída. Eu estou aprendendo num curso online onde o professor explica bem mas as vezes ele é meio "pardal" rsrs. E eu gosto do código mais enxuto.

Link para o comentário
Compartilhar em outros sites

34 minutos atrás, Felipecfk disse:

Mas vou testar as duas de qualquer forma porque nem sempre convém ficar alterando configurações de idioma pelo windows.

Considere sempre que o programa pode estar rodando em um computador que não é o seu. :) O do seu chefe, ou do chefe dele...

O ético é sempre consultar o sistema, mudar a configuração se não for adequada e depois voltar para a configuração original.

  • Curtir 1
Link para o comentário
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisa ser um usuário para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...