domingo, 23 de agosto de 2009

C# - Métodos estáticos da struct Char

Esse post não será mais atualizado nesse blog. Para visualizar esse post em seu novo endereço, acesse:
http://milaneze.com.br/post/2009/08/23/C-Metodos-estaticos-da-struct-Char.aspx


Os principais métodos estáticos da struct Char são para verificar se o caracter é de pontuação, se é uma letra, número, etc. O retorno é um dado do tipo bool.

Alguns exemplos (character é um dado do tipo char):

Char.IsDigit( character );
Char.IsDigit( character );
Char.IsLetter( character );
Char.IsLetterOrDigit( character );
Char.IsLower( character );
Char.IsUpper( character );
Char.ToUpper( character );
Char.ToLower( character );
Char.IsPunctuation( character );
Char.IsSymbol( character );

C# - Classe StringBuilder (namespace System.Text)

Esse post não será mais atualizado nesse blog. Para visualizar esse post em seu novo endereço, acesse:
http://milaneze.com.br/post/2009/08/23/C-Classe-StringBuilder-(namespace-SystemText).aspx


O tipo string é imutável, o que significa que sempre que é usado um operador + ou += (concatenação), uma nova string é criada. O tipo StringBuilder (namespace System.Text) manipula informações de strings dinâmicas. Diferente da string comum, o tipo StringBuilder adequa sua capacidade conforme o tamanho da string vai aumentando.

Os métodos mais usados:

- Append
- AppendFormat
- Insert
- Remove
- Replace

Alguns exemplos sobre essa classe e seus principais métodos:

   1:  class Program

   2:  {

   3:      static void Main(string[] args)

   4:      {

   5:          StringBuilder buffer = new StringBuilder();

   6:   

   7:          buffer.Append(1);

   8:          buffer.Append(" - Meu");

   9:          buffer.Append(" nome");

  10:          buffer.Append(" é");

  11:   

  12:          Console.WriteLine("Buffer após Append: " + buffer.ToString());

  13:   

  14:   

  15:          buffer.AppendFormat(" {0}", "Eric");

  16:          buffer.AppendFormat(" - {0}", 1);

  17:   

  18:          Console.WriteLine("\nBuffer após AppendFormat: " + buffer.ToString());

  19:   

  20:   

  21:          StringBuilder buffer2 = new StringBuilder();

  22:   

  23:          buffer2.Insert(0, "a");

  24:          buffer2.Insert(0, 15);

  25:          buffer2.Insert(0, true);

  26:   

  27:          Console.WriteLine("\nBuffer2 após Insert: " + buffer2.ToString());

  28:   

  29:   

  30:          buffer2.Remove(0, 1);

  31:          buffer2.Remove(2, 2);

  32:   

  33:          Console.WriteLine("\nBuffer2 após Remove: " + buffer2.ToString());

  34:   

  35:   

  36:          buffer2.Replace("ru", "True ");

  37:          buffer2.Replace('5', '2');

  38:          buffer2.Replace("a", "abc");

  39:   

  40:          Console.WriteLine("\nBuffer2 após Replace: " + buffer2.ToString());

  41:   

  42:   

  43:          Console.Read();

  44:      }

  45:  }


O resultado é mostrado abaixo:

sábado, 22 de agosto de 2009

C# - Uso de DLLs nativas

Esse post não será mais atualizado nesse blog. Para visualizar esse post em seu novo endereço, acesse:
http://milaneze.com.br/post/2009/08/22/C-Uso-de-DLLs-nativas.aspx


O padrão para esse tipo de chamada é o seguinte:

using System.Runtime.InteropServices;

(...)

[DllImport("NomeDaDll.dll")]
static extern int NomeDoMetodo(string parametro1, int parametro2);


A classe que estiver com o código acima receberá os métodos que forem declarados da dll como se fossem seus próprios métodos.

domingo, 16 de agosto de 2009

C# - Multiple Document Interface

Esse post não será mais atualizado nesse blog. Para visualizar esse post em seu novo endereço, acesse:
http://milaneze.com.br/post/2009/08/16/C-Multiple-Document-Interface.aspx


Forms MDI são aqueles que permitem ao usuário editar vários documentos de uma vez (por ex.: Photoshop, onde existem outros forms dentro do form principal).

Para que o form seja MDI, é necessário mudar a propriedade IsMdiContainer para true.

Supondo que o form child tenha o nome JanelaCadastro, o código para abrir outros forms dentro form parent é o seguinte:

JanelaCadastro janela = new JanelaCadastro();
janela.MdiParent = this;
janela.Show();