O objetivo deste TM é mostrar como ler e gravar arquivos de texto através de uma aplicação VB.NET. Também serão apresentadas algumas das inovações no trabalho com strings, que visam facilitar a programação e tornar esse processo mais leve para o sistema.
Softwares utilizados :
- Microsoft Visual Studio.NET 2003 Enterprise Architect (também conhecido como "Everett" ou versão 7.1) - Beta Final
Requisitos do sistema: (para instalação completa, que contém todas as linguagens e recursos)
- Processador Intel Pentium II /AMD K6-2 a partir de 450 Mhz (Pentium III/AMD Duron a partir de 600 Mhz recomendados)
- Memória RAM: 96 Mb para Windows 2000 Pro (recomendado 128 Mb), 192 Mb para Windows 2000 Server (recomendado 256 Mb), 96 Mb para Windows XP Home (recomendado 160 Mb) e 192 Mb para Windows XP Pro/Windows Server 2003 (recomendado 256 Mb)
- 4.1 GB no drive da instalação e 900 Mb no drive do sistema
- IIS 5.0 ou superior
- Sistema Operacional: Windows 2000*, Windows XP ou Windows Server 2003 (é possível executar aplicações desenvolvidas com o VS.NET no Windows 98/Me/NT 4 mas não é possível desenvolver as aplicações nesses sistemas). * o Windows 2000 Datacenter Server não é suportado.
- Drive de CD-ROM ou DVD-ROM
- Placa de vídeo e monitor que suporte resolução de 800x600 e 256 cores (recomendado High Color 16-Bit)
- Mouse
Para começar crie um novo projeto no Visual Studio.NET. Para isso selecione "Visual Basic Projects" em Project Types e "Windows Application" em Templates. Em Name digite "Strings":

New Project
Para montar nosso form, basta colocar dois componentes Button, chamados "btnLer" e "btnGravar". Para inserir os textos coloque um componente TextBox chamado "txtTexto" e configure sua opção Multline para True, veja o layout do form:

Layout do form
Agora vamos inserir os códigos para tornar os botões funcionais. Clique duas vezes sobre o botão btnLer e insira o seguinte código:
Dim objStream As New System.IO.FileStream ("C:\arquivo.txt", IO.FileMode.OpenOrCreate)
Dim Arq As New System.IO.StreamReader(objStream)
txtTexto.Clear()
txtTexto.Text = Arq.ReadToEnd
Arq.Close()
MessageBox.Show("Arquivo carregado")
Agora clique duas vezes sobre o botão btnGravar e insira o seguinte código:
Dim objStream As New System.IO.FileStream ("C:\arquivo.txt", IO.FileMode.OpenOrCreate)
Dim Arq As New System.IO.StreamWriter(objStream)
Arq.Write(txtTexto.Text)
Arq.Close()
MessageBox.Show("Arquivo gravado!")
Veja abaixo a janela de código: (clique na figura para ampliá-la)

Código dos botões
Vamos agora inicair a aplicação: pressione a tecla F5. Para testar a aplicação digite um texto qualquer na área de texto e clique no botão Gravar. Após isso apague todo o texto e clique no botão Ler:

Pressionar o botão Gravar

Pressionar o botão Ler
Manipulando Strings no Visual Basic.NET
A manipulação de Strings no VB.NET foi bastante alterada: classes específicas foram criadas para esse fim, tornando sua manipulação mais objetiva e menos dispendiosa. O tipo String no VB.NET ganhou algumas propriedades e métodos adicionais, porém seu funcionamento básico continua sendo o mesmo. No VB6 e no VB.NET, ao concatenarmos duas strings o que acontece, na realidade, é que são reservados espaços na memória (buffers) para a string final e para as duas outras: isso causa grande uso de memória e torna os processos lentos.
Porém ela possui um método que torna esse processo muito mais rápido: o ConCat. Esse método faz com que seja calculado o tamanho total necessário antes da concatenação e as strings sejam colocadas nesse local diretamente, agilizando o processo. Veja um exemplo:
Private Sub Concatenar()
Dim StrSite as String
StrSite="BABOO"
StrSite = System.String.ConCat(StrSite, "-", "www.baboo.com.br")
Messagebox.Show (StrSite)
End Sub
A classe StringBuilder
Essa classe é muito eficiente quando torna-se necessária a manipulação de strings longas: com ela o CLR não perde tanto tempo quanto o necessário na concatenação tradicional de strings. Essa classe é otimizada para a montagem de grandes strings e facilita muito o trabalho do programador, veja um exemplo:
Private Sub Concatenar()
Dim Builder As New System.Text.StringBuilder
Builder.Append("FORUM DO BABOO - ")
Builder.Append("O maior fórum de informática do Brasil - ")
Builder.Append("www.babooforum.com.br")
MessageBox.Show(Builder.ToString)
End Sub
Conclusão
Podemos notar grandes alterações na forma como o Visual Basic.NET manipula arquivos textos e strings. Considero que essas mudanças simplificaram muito o processo de programação, facilitando o trabalho com os arquivos texto que são muito utilizados por exemplos em arquivos .ini) e principalmente na manipulação de strings, que possui mais facilidade e exige muito menos recursos do sistema através de classes com métodos e propriedades específicas e objetivas.
Marcas Registradas
Visual Basic, Visual Basic.NET, Visual Studio.NET, SQL Server, Internet Explorer, Windows são marcas registradas da Microsoft Corporation.
Todos os demais nomes registrados, marcas registradas ou direitos de uso citados neste TM pertencem a seus respectivos proprietários.
Autor original: ClawHammer
Direitos Autorais: BABOO
