none
problemas com acento c# console (diretório) RRS feed

  • Pergunta

  • Com este código

    string caminho2 = Path.GetDirectoryName(C:\Teste\Configurações\);

                            System.IO.DirectoryInfo di = new System.IO.DirectoryInfo(caminho2);
                           
                                if (Directory.Exists(caminho2))

     

    ele não consegue ler  pois aparece caracteres estranho no local do "ç" e o "õ"

    como consigo ler o sinais 

     

    lembrando q é um programa console

     

    coloquei no app.conging

    <globalization requestEncoding="utf-8" responseEncoding="utf-8" culture="pt-br" />

    mais não funcionou


    o que posso fazer???

     

    abraço

    terça-feira, 29 de novembro de 2011 19:23

Respostas

  • Amigo,

    Segue um exemplo de como fazer.

    using System;
    using System.IO;
    using System.Text;
    
    namespace ExemploDiretorioAcento
    {
        class Program
        {
            static void Main(string[] args)
            {
                /*
                 Conteudo do Arquivo ListaCaminhos.txt
                  
                    C:\dir\pasta_possível
                    C:\dir\pasta_impossível
                 
                 */
    
                string[] caminhoArray = File.ReadAllLines(@"C:\dir\ListaCaminhos.txt", Encoding.Default);
    
                // Array
                // 0 - C:\dir\pasta_possível
                // 1 - C:\dir\pasta_impossível
    
                foreach (var item in caminhoArray)
    	        {
                    if (Directory.Exists(item))
                    {
                        Console.WriteLine("Diretorio {0} existe.", item);
                    }
                    else
                    {
                        Console.WriteLine("Diretorio NÃO {0} existe.", item);
                    }
    	        }
    
                Console.Read(); 
            }
        }
    }
    
    



    se a resposta foi útil, classifique :)
    ate mais,

    Rodrigo Soria
    terça-feira, 29 de novembro de 2011 22:07
  • Isso não um problema BROWN. cara se você imprimi isso num textbox sai  certinho n sai? então ja te explique.

    vai no cmd. e vare essa pasta tem digitar ç ou ã em console(dos) esse caracteres não imprimiveis. só as carecteres primarios a-z A-Z 0-9 \/-(){}[]...


    "Desenvolvendo..."
    quarta-feira, 30 de novembro de 2011 19:29

Todas as Respostas

  • A Consola (Console) é um sistema primitivo (MS-DOS) por isso acentos e caracteres especias não sou impressos. no caso do console. sempre terá de utilizar palavras simples.!
    "Desenvolvendo..."
    terça-feira, 29 de novembro de 2011 19:25
  • Não posso alterar o nome do diretório
    terça-feira, 29 de novembro de 2011 19:27
  • No console não tem como!. e depois nome de pasta e arquivos. o ideal não utilizar caracteres especias
    "Desenvolvendo..."
    terça-feira, 29 de novembro de 2011 19:30
  • Eu só quero q o caminho da varivel seje passado certo?

    o q acontece é q na variavel ele esta atribuindo com caracteres estranhos

    terça-feira, 29 de novembro de 2011 19:32
  • Olá,

    Tenta assim:

     

                DirectoryInfo di = new DirectoryInfo(@"C:\Projetos\Caçulão");

                if (di.Exists)

                {

                    Console.Write("Achou");

                }

    Abraços

    terça-feira, 29 de novembro de 2011 19:46
  • O problema é q assim estou setando o caminho

    e este caminhos estão em um arquivo txt

     

    e são vários

    terça-feira, 29 de novembro de 2011 19:55
  • Amigo,

    Segue um exemplo de como fazer.

    using System;
    using System.IO;
    using System.Text;
    
    namespace ExemploDiretorioAcento
    {
        class Program
        {
            static void Main(string[] args)
            {
                /*
                 Conteudo do Arquivo ListaCaminhos.txt
                  
                    C:\dir\pasta_possível
                    C:\dir\pasta_impossível
                 
                 */
    
                string[] caminhoArray = File.ReadAllLines(@"C:\dir\ListaCaminhos.txt", Encoding.Default);
    
                // Array
                // 0 - C:\dir\pasta_possível
                // 1 - C:\dir\pasta_impossível
    
                foreach (var item in caminhoArray)
    	        {
                    if (Directory.Exists(item))
                    {
                        Console.WriteLine("Diretorio {0} existe.", item);
                    }
                    else
                    {
                        Console.WriteLine("Diretorio NÃO {0} existe.", item);
                    }
    	        }
    
                Console.Read(); 
            }
        }
    }
    
    



    se a resposta foi útil, classifique :)
    ate mais,

    Rodrigo Soria
    terça-feira, 29 de novembro de 2011 22:07
  • mesmo assim não consegui resolver o problema ainda
    quarta-feira, 30 de novembro de 2011 15:42
  • Isso não um problema BROWN. cara se você imprimi isso num textbox sai  certinho n sai? então ja te explique.

    vai no cmd. e vare essa pasta tem digitar ç ou ã em console(dos) esse caracteres não imprimiveis. só as carecteres primarios a-z A-Z 0-9 \/-(){}[]...


    "Desenvolvendo..."
    quarta-feira, 30 de novembro de 2011 19:29