Desenvolvimento - ASP. NET
System.IO: Criando um arquivo usando Visual Studio.NET 2005
Neste artigo o autor mostra como funciona a criação de um arquivo usando o Visual Studio.NET 2005 (usando o System.IO).
por Mauricio JuniorOlá pessoal, meu nome é Mauricio Junior e estou disposto a mostrar como funciona a criação de um arquivo usando o Visual Studio.NET 2005 (usando o System.IO). No próximo artigo, escreverei sobre como ler o arquivo criado.
Requisitos:
- Framework 2.0 instalado;
- Visual Studio .NET 2005 instalado;
- Conhecimentos básicos C#.NET (procuro ensinar de forma simples)
O primeiro passo, abri o Visual Studio.NET 2005 e cliquei em “Create Web Site”, escolhi o caminho e linguagem utilizada para o desenvolvimento. (Referência 1.1)
Referência: 1.1
Criei um projeto do tipo ASP.NET Web Site, com a linguagem C# (sharp) e coloquei em um endereço específico, ou seja, sem utilizar o IIS instalado na máquina, usarei o servidor de aplicação do próprio Visual Studio.NET 2005.
Depois do projeto criado, acessei o arquivo de configuração Web.config e adicionei um AppSettings com chave e valor. (Referência 1.2)
Referência: 1.2
O código acrescentado está na referência 1.3.
<appSettings> <add key="enderecoArquivo" value="C:\Documents and Settings\mauricio.junior\Desktop\Escrevendo arquivo texto\code"/> </appSettings>
|
Referência: 1.3
Essa chave é apenas para atribuir o caminho do arquivo onde irei criar, ou seja, é melhor colocar essa configuração no “web.config”, se houver mudança do caminho, basta mudar apenas no arquivo de configuração e não é necessário recompilar a aplicação.
Depois que adicionei o endereço, passo para a parte de codificar.
Criando a classe
Nesse passo, criarei uma classe responsável para criar um arquivo no local especificado no arquivo de configuração. Cliquei com o botão direito em cima do SOLUTION EXPLORER, indo para a opção ADD NEW ITEM... (Referência 1.4)
Referência: 1.4
Em seguida abri uma opção para escolher o tipo de arquivo e adicionar um nome necessário. (Referência 1.5)
Referência: 1.5
Para a opção CLASS na tela TEMPLATES, coloquei o nome de “Arquivo.cs” e escolhi a linguagem Visual C#. Em seguida cliquei no botão ADD.
O Visual Studio.NET 2005 possui uma funcionalidade onde toda classe fica em uma pasta exclusivamente para classes. Com isso, o mesmo pergunta se pode adicionar essa classe nessa pasta. (Referência 1.6)
Referência: 1.6
A classe responsável: criei um método público, estático e não retorna valor e não recebe parâmetro algum. (Referência 1.7)
//importes using System.IO;
public static void CriarAquivo() { try { string path = @"" + System.Configuration.ConfigurationManager.AppSettings["enderecoArquivo"].ToString() + "\\"+DateTime.Now.Day+".txt"; FileInfo fi = new FileInfo(path);
//verificando se o arquivo existe if (!fi.Exists) { //criando arquivo para depois escrever nele using (StreamWriter sw = fi.CreateText()) { sw.WriteLine("Olá"); sw.WriteLine("Mundo"); } } } catch (System.Exception e) { throw new Exception("erro", e); } }
|
Referência: 1.7
Segue a imagem de ilustração da classe, referência 1.8.
Referência: 1.8
Explicação:
O método “estático” é para não criar uma instancia na classe que irá chamar, ou seja, coloca o nome da classe, ponto o nome do método e pronto.
Utilizo o “try” “catch” para saber se algum erro aconteceu na criação do código ou na hora da escrita. Se acontecer algum erro, o mesmo envia para a página que chamou. A primeira linha depois do “try” é para definir o endereço do arquivo; não podemos esquecer de que o caminho está no arquivo de configuração. (Referência 1.9)
string path = @"" + System.Configuration.ConfigurationManager.AppSettings["enderecoArquivo"].ToString() + "\\"+DateTime.Now.Day+".txt"; FileInfo fi = new FileInfo(path);
|
Referência: 1.9
A referência 1.9: pego a string configurada dentro do arquivo de configuração “Web.config”, adiciono o nome do arquivo a data do dia e concateno com .txt. O passo seguinte, uso o FileInfo colocando a variável que atribui na string path.
//verificando se o arquivo existe if (!fi.Exists) { //criando arquivo para depois escrever nele using (StreamWriter sw = fi.CreateText()) { sw.WriteLine("Olá"); sw.WriteLine("Mundo"); } }
|
Referência: 1.10
A referência 1.10: verifico se existe o arquivo, se não existe ele entra para criá-lo. Abaixo, crio o arquivo com o comando “CreateText()”. O comando “sw.WriteLine escreve dentro do arquivo. O “WriteLine” sempre adiciona mais uma linha automaticamente.
} catch (System.Exception e) { throw new Exception("erro", e); }
|
Referência: 1.11
Verifico apenas se aconteceu um erro para retorná-lo junto a classe que chamou.
Depois de criado o método na classe “Arquivo.cs”, basta só chamá-lo.
Abri o arquivo “Default.cs” e adicionei um comando dentro do método “Page_Load”. Referência 1.12.
protected void Page_Load(object sender, EventArgs e) { Arquivo.CriarAquivo(); }
|
Referência: 1.12
Essa linha de comando apenas chama a classe estática criada anteriormente. Ilustração da classe. (Referência 1.13)
Referência: 1.13
Apertei F5 para iniciar o projeto do Visual Studio.NET 2005 e fui ao caminho onde iria ser criado o arquivo. Referência 1.14.
Lá estava ele:
Referência: 1.14
Cliquei para abri-lo e lá está escrito. Referência 1.15
Referência: 1.15
Bom, por enquanto fico por aqui.
Espero ter ajudado de alguma forma.
Mauricio Junior
MCP Microsoft Certification Professional.