Você está aqui: C# ::: Dicas & Truques ::: Arquivos e Diretórios |
Como testar se um diretório existe em C# usando a propriedade Exists da classe DirectoryInfoQuantidade de visualizações: 4 vezes |
Em algumas situações nós precisamos verificar se um diretório existe em C#, talvez para ler ou gravar dados neste arquivo. Isso pode ser feito por meio da propriedade Exists da classe DirectoryInfo. Esta propriedade retorna um valor true se o diretório existir e false em caso contrário. Veja o código completo para o exemplo: ---------------------------------------------------------------------- Se precisar de ajuda para ajustar o código abaixo de acordo com as suas necessidades, chama a gente no WhatsApp +55 (62) 98553-6711 (Osmar) Ah, e se puder, faça uma DOAÇÃO de qualquer valor para nos ajudar a manter o site livre de anúncios. Ficaremos eternamente gratos ;-) Nosso PIX é: osmar@arquivodecodigos.com.br ---------------------------------------------------------------------- using System; using System.IO; namespace Estudos { class Principal { static void Main(string[] args) { // vamos criar uma nova instância da classe DirectoryInfo DirectoryInfo dir = new DirectoryInfo(@"C:\estudos_csharp\imagens"); // vamos testar se o diretório existe if (dir.Exists) { Console.Write("Diretório existe"); } else { Console.Write("Diretório não existe"); } Console.WriteLine("\nPressione uma tecla para sair..."); Console.ReadKey(); } } } Ao executar este código C# nós teremos o seguinte resultado: O diretório existe. |
![]() |
C# ::: Coleções (Collections) ::: List<T> |
Como inserir um novo elemento em uma posição N de uma List<T> do C# usando a função Insert()Quantidade de visualizações: 9006 vezes |
Em algumas situações gostaríamos de inserir um novo elemento em uma determinada posição de uma List<T>, ou seja, queremos ser capazes de inserir o novo elemento em qualquer posição, e não somente no final da lista. Para isso podemos usar o método Insert(). Veja sua assinatura:public void Insert( int index, T item ) ---------------------------------------------------------------------- Se precisar de ajuda para ajustar o código abaixo de acordo com as suas necessidades, chama a gente no WhatsApp +55 (62) 98553-6711 (Osmar) Ah, e se puder, faça uma DOAÇÃO de qualquer valor para nos ajudar a manter o site livre de anúncios. Ficaremos eternamente gratos ;-) Nosso PIX é: osmar@arquivodecodigos.com.br ---------------------------------------------------------------------- static void Main(string[] args){ // vamos criar um objeto da classe List<T> List<int> valores = new List<int>(); // vamos inserir quatro valores na lista valores.Add(5); valores.Add(2); valores.Add(6); valores.Add(9); // vamos usar o laço foreach para percorrer os elementos na lista Console.WriteLine("Elementos na lista:"); foreach(int v in valores){ Console.WriteLine(v); } // vamos inserir um novo elemento no índice 2 valores.Insert(2, 20); // vamos usar o laço foreach para percorrer os elementos na lista novamente Console.WriteLine("Elementos na lista:"); foreach(int v in valores){ Console.WriteLine(v); } // vamos pausar a execução Console.ReadKey(); } Ao executarmos este código teremos o seguinte resultado: Elementos na lista: 5 2 6 9 Elementos na lista: 5 2 20 6 9 Este método pode lançar uma exceção do tipo ArgumentOutOfRangeException se o índice fornecido for menor que 0 ou superior à quantidade de itens na lista. |
C# ::: Coleções (Collections) ::: List<T> |
Como percorrer os itens de uma List do C# usando o laço forQuantidade de visualizações: 520 vezes |
Em várias ocasiões nós precisamos percorrer os elementos de uma lista do C#. Para isso nós podemos usar o laço for e, dentro deste laço, acessar os elementos da lista individualmente usando o operador [] e o índice desejado. Veja o código C# completo para o exemplo: ---------------------------------------------------------------------- Se precisar de ajuda para ajustar o código abaixo de acordo com as suas necessidades, chama a gente no WhatsApp +55 (62) 98553-6711 (Osmar) Ah, e se puder, faça uma DOAÇÃO de qualquer valor para nos ajudar a manter o site livre de anúncios. Ficaremos eternamente gratos ;-) Nosso PIX é: osmar@arquivodecodigos.com.br ---------------------------------------------------------------------- using System; using System.Collections.Generic; namespace Estudos { class Principal { static void Main(string[] args) { List<int> valores = new List<int>(); // insere valores na lista valores.Add(4); valores.Add(2); valores.Add(87); valores.Add(23); valores.Add(100); // agora vamos usar o laço for para percorrer os // itens da lista Console.WriteLine("Os itens da lista são:"); for(int i = 0; i < valores.Count; i++) { Console.Write(valores[i] + ", "); } Console.WriteLine("\nPressione uma tecla para sair..."); Console.ReadKey(); } } } Ao executar este código C# nós teremos o seguinte resultado: Os itens da lista são: 4, 2, 87, 23, 100, |
C# ::: Dicas & Truques ::: Data e Hora |
Como adicionar ou subtrair meses de uma data em C# usando a função AddMonths() da classe DateTimeQuantidade de visualizações: 12145 vezes |
Em algumas situações nossos códigos precisam adicionar ou subtrair meses de uma data. Isso pode ser feito com o auxílio do método AddMonths() da estrutura DateTime. Este método recebe o número de meses a serem acrescidos ou substraídos da data representada pelo DateTime atual e retorna um novo DateTime com as devidas modificações. Veja um trecho de código no qual adicionamos 3 meses à data atual: ---------------------------------------------------------------------- Se precisar de ajuda para ajustar o código abaixo de acordo com as suas necessidades, chama a gente no WhatsApp +55 (62) 98553-6711 (Osmar) Ah, e se puder, faça uma DOAÇÃO de qualquer valor para nos ajudar a manter o site livre de anúncios. Ficaremos eternamente gratos ;-) Nosso PIX é: osmar@arquivodecodigos.com.br ---------------------------------------------------------------------- static void Main(string[] args){ // vamos obter a data de hoje DateTime hoje = DateTime.Now; // exibe a data de hoje System.Console.WriteLine("Hoje é {0:d}", hoje); // vamos adicionar 3 meses à data de hoje DateTime data_futura = hoje.AddMonths(3); // exibe a data daqui a três meses System.Console.WriteLine("Daqui a 3 meses será {0:d}", data_futura); // pausa o programa System.Console.Write("\nPressione qualquer tecla para sair..."); Console.ReadKey(); } É possível também subtrair meses. Para isso só precisamos fornecer um valor negativo para o método AddMonths(). Veja: ---------------------------------------------------------------------- Se precisar de ajuda para ajustar o código abaixo de acordo com as suas necessidades, chama a gente no WhatsApp +55 (62) 98553-6711 (Osmar) Ah, e se puder, faça uma DOAÇÃO de qualquer valor para nos ajudar a manter o site livre de anúncios. Ficaremos eternamente gratos ;-) Nosso PIX é: osmar@arquivodecodigos.com.br ---------------------------------------------------------------------- static void Main(string[] args){ // vamos obter a data de hoje DateTime hoje = DateTime.Now; // exibe a data de hoje System.Console.WriteLine("Hoje é {0:d}", hoje); // vamos subtrair 5 meses da data de hoje DateTime data_passado = hoje.AddMonths(-5); // exibe a data 5 meses atrás System.Console.WriteLine("Há 5 meses era {0:d}", data_passado); // pausa o programa System.Console.Write("\nPressione qualquer tecla para sair..."); Console.ReadKey(); } Lembre-se, contudo, que o método AddMonths() pode disparar uma exceção do tipo ArgumentOutOfRangeException se o DateTime resultante for menor que MinValue ou maior que MaxValue. MinValue e MaxValue são os menor e maior valores que um DateTime pode representar. Esta exceção também será disparada se o valor fornecido para o mês for menor que -120.000 ou maior que 120.000. |
C# ::: Windows Forms ::: TextBox |
Como definir a cor de fundo de uma caixa de texto TextBox do C# Windows Forms via códigoQuantidade de visualizações: 9065 vezes |
Nesta dica mostrarei como podemos usar a propriedade BackColor da classe Control do C# Windows Forms para definir a cor de fundo de uma caixa de texto TextBox. Note que criei uma TextBox com o nome textBox1 e estou chamando o código a partir do evento Click de um botão Button. Veja o trecho de código para o exemplo: ---------------------------------------------------------------------- Se precisar de ajuda para ajustar o código abaixo de acordo com as suas necessidades, chama a gente no WhatsApp +55 (62) 98553-6711 (Osmar) Ah, e se puder, faça uma DOAÇÃO de qualquer valor para nos ajudar a manter o site livre de anúncios. Ficaremos eternamente gratos ;-) Nosso PIX é: osmar@arquivodecodigos.com.br ---------------------------------------------------------------------- private void button1_Click(object sender, EventArgs e){ textBox1.BackColor = Color.YellowGreen; } |
C# ::: Windows Forms ::: TextBox |
C# Windows Forms Avançado - Como rolar as linhas de um TextBox para o topo (parte superior) usando a API do WindowsQuantidade de visualizações: 7024 vezes |
Em algumas situações gostaríamos de rolar para cima o conteúdo de um TextBox de múltiplas. Para isso podemos usar a API do Windows, mais especificamente a mensagem WM_VSCROLL com o valor SB_TOP para seu parâmetro wParam. O valor do parâmetro lParam é zero. Veja um trecho de código que rola para cima o conteúdo de um TextBox. Antes de executar este exemplo, tenha a certeza de ter um TextBox de múltiplas, com barras de rolagem e conteúdo que force o aparecimento das barras de rolagem. Comece adicionando a linha: ---------------------------------------------------------------------- Se precisar de ajuda para ajustar o código abaixo de acordo com as suas necessidades, chama a gente no WhatsApp +55 (62) 98553-6711 (Osmar) Ah, e se puder, faça uma DOAÇÃO de qualquer valor para nos ajudar a manter o site livre de anúncios. Ficaremos eternamente gratos ;-) Nosso PIX é: osmar@arquivodecodigos.com.br ---------------------------------------------------------------------- using System.Runtime.InteropServices; na seção de usings do seu formulário ou classe. Em seguida adicione o trecho de código abaixo no corpo da classe, como um método: ---------------------------------------------------------------------- Se precisar de ajuda para ajustar o código abaixo de acordo com as suas necessidades, chama a gente no WhatsApp +55 (62) 98553-6711 (Osmar) Ah, e se puder, faça uma DOAÇÃO de qualquer valor para nos ajudar a manter o site livre de anúncios. Ficaremos eternamente gratos ;-) Nosso PIX é: osmar@arquivodecodigos.com.br ---------------------------------------------------------------------- [DllImport("user32.dll", EntryPoint = "SendMessage", CharSet = CharSet.Auto, SetLastError = true)] private static extern IntPtr SendMessage(IntPtr hWnd, uint Msg, IntPtr wParam, IntPtr lParam); Finalmente coloque o código abaixo no evento Click de um botão: ---------------------------------------------------------------------- Se precisar de ajuda para ajustar o código abaixo de acordo com as suas necessidades, chama a gente no WhatsApp +55 (62) 98553-6711 (Osmar) Ah, e se puder, faça uma DOAÇÃO de qualquer valor para nos ajudar a manter o site livre de anúncios. Ficaremos eternamente gratos ;-) Nosso PIX é: osmar@arquivodecodigos.com.br ---------------------------------------------------------------------- private void button2_Click(object sender, EventArgs e){ // antes de executar este exemplo certifique-se de que // a propriedade Multiline do TextBox esteja definida // como true e a propriedade ScrollBars contenha o valor // Vertical ou Both textBox1.Multiline = true; textBox1.ScrollBars = ScrollBars.Vertical; // constante para a mensagem WM_VSCROLL const uint WM_VSCROLL = 0x115; // constante para o parâmetro wParam const int SB_TOP = 6; // handle para a caixa de texto IntPtr handle = textBox1.Handle; IntPtr wParam = (IntPtr)SB_TOP; IntPtr lParam = IntPtr.Zero; // vamos fazer com que o TextBox role para o topo (parte superior) SendMessage(textBox1.Handle, WM_VSCROLL, wParam, lParam); } |
C# ::: Fundamentos da Linguagem ::: Métodos, Procedimentos e Funções |
C# para iniciantes - Como escrever um método que possui parâmetros (e que recebe argumentos) usando a linguagem C#Quantidade de visualizações: 11400 vezes |
Parâmetros permitem que personalizemos a forma que o conjunto de instruções em um método será executado. Em C# os parâmetros de um método são separados por vírgulas e seguem a forma usual de declaração de variáveis, ou seja, o tipo de dados seguido pelo nome da variável. Veja um exemplo de método com parâmetros:---------------------------------------------------------------------- Se precisar de ajuda para ajustar o código abaixo de acordo com as suas necessidades, chama a gente no WhatsApp +55 (62) 98553-6711 (Osmar) Ah, e se puder, faça uma DOAÇÃO de qualquer valor para nos ajudar a manter o site livre de anúncios. Ficaremos eternamente gratos ;-) Nosso PIX é: osmar@arquivodecodigos.com.br ---------------------------------------------------------------------- // um método que recebe dois argumentos // e não retorna nenhum valor static void escrever(String texto, int quant){ for(int i = 0; i < quant; i++){ Console.WriteLine(texto); } } static void Main(string[] args) { // efetua uma chamada ao método informando o texto e // a quantidade de vezes que ele será exibido na tela escrever("http://www.arquivodecodigos.net", 4); Console.WriteLine("\n\nPressione uma tecla para sair..."); Console.ReadKey(); } O método escrever() possui dois parâmetros: texto e quant. Note que usamos o inteiro quant como limite para um laço for, que exibe na tela o valor da variável texto a cada iteração. Observe também a forma como este método é chamado a partir do método Main() da aplicação (fornecemos dois argumentos: o texto e a quantidade de vezes que este será exibido). Por último lembre-se de que as variáveis contidas nos parâmetros dos métodos estão disponíveis para acesso somente dentro do corpo do método, ou seja, entre as chaves { e }. |
C# ::: Coleções (Collections) ::: ArrayList |
Como excluir todos os elementos de uma ArrayList do C# usando o método Clear()Quantidade de visualizações: 8277 vezes |
A remoção, ou seja, a exclusão de todos os elementos de uma ArrayList do C# pode ser feita com uma chamada ao método Clear(). Veja que este método poderá lançar uma exceção NotSupportedException se a ArrayList for somente leitura ou possuir um tamanho fixo. Veja um exemplo de seu uso: ---------------------------------------------------------------------- Se precisar de ajuda para ajustar o código abaixo de acordo com as suas necessidades, chama a gente no WhatsApp +55 (62) 98553-6711 (Osmar) Ah, e se puder, faça uma DOAÇÃO de qualquer valor para nos ajudar a manter o site livre de anúncios. Ficaremos eternamente gratos ;-) Nosso PIX é: osmar@arquivodecodigos.com.br ---------------------------------------------------------------------- using System; using System.Collections; namespace Estudos { class Program { static void Main(string[] args) { // Cria o ArrayList ArrayList cidades = new ArrayList(); // Adiciona nomes de cidades cidades.Add("Goiânia"); cidades.Add("Cuiabá"); cidades.Add("Fortaleza"); cidades.Add("Curitiba"); // obtém a quantidade de elementos int quant = cidades.Count; Console.Write("A lista contém {0} itens\n", quant); // vamos remover todos os elementos cidades.Clear(); // obtém a quantidade de elementos novamente quant = cidades.Count; Console.Write("A lista contém {0} itens", quant); Console.WriteLine("\n\nPressione uma tecla para sair..."); Console.ReadKey(); } } } Ao executar este código C# nós teremos o seguinte resultado: A lista contém 4 itens A lista contém 0 itens Pressione uma tecla para sair... |
C# ::: Datas e Horas ::: DateTime |
Como construir uma data em C# usando o objeto DateTime e fornecendo o dia, mês e ano da data desejadaQuantidade de visualizações: 7070 vezes |
Aplicações que lidam com datas e horas geralmente precisam ser capazes de criar suas próprias datas. Isso pode ser feito com o auxílio de um dos vários construtores da estrutura DateTime. Para esta dica eu mostrarei como criar uma data no formato 23/05/2008. O construtor a ser usado é:---------------------------------------------------------------------- Se precisar de ajuda para ajustar o código abaixo de acordo com as suas necessidades, chama a gente no WhatsApp +55 (62) 98553-6711 (Osmar) Ah, e se puder, faça uma DOAÇÃO de qualquer valor para nos ajudar a manter o site livre de anúncios. Ficaremos eternamente gratos ;-) Nosso PIX é: osmar@arquivodecodigos.com.br ---------------------------------------------------------------------- DateTime(Int32, Int32, Int32) Este construtor pede valores inteiros representando o ano, mês e dia da data que queremos construir e retorna um objeto DateTime representando a data recém-construida. Veja um exemplo: ---------------------------------------------------------------------- Se precisar de ajuda para ajustar o código abaixo de acordo com as suas necessidades, chama a gente no WhatsApp +55 (62) 98553-6711 (Osmar) Ah, e se puder, faça uma DOAÇÃO de qualquer valor para nos ajudar a manter o site livre de anúncios. Ficaremos eternamente gratos ;-) Nosso PIX é: osmar@arquivodecodigos.com.br ---------------------------------------------------------------------- static void Main(string[] args){ // cria um objeto DateTime para a data 10/04/2008 DateTime data = new DateTime(2008, 4, 10); // exibe o resultado System.Console.WriteLine(data.ToString("dd/MM/yyyy")); // pausa o programa Console.ReadKey(); } Note que, quando usamos este construtor, a parte do DateTime relativa às horas é inicializada como meia-noite. Tome cuidade. Este método pode lançar exceções dos tipos ArgumentOutOfRangeException e ArgumentException se os valores fornecidos para o ano, mês e dia estiverem fora das faixas permitidas. |
Desafios, Exercícios e Algoritmos Resolvidos de C# |
Veja mais Dicas e truques de C# |
Dicas e truques de outras linguagens |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
1º lugar: Java |