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 Junior



Olá 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.
Mauricio Junior

Mauricio Junior - Formado pela Faculdade Anhanguera, Especialista pela FGV (Fundação Getúlio Vargas), Pós-Graduação em Docência Superior e cursando Mestrado na UNB Engenharia Elétrica; . Tenho 29 anos e possuo sete livros publicados pela editora Ciência Moderna e sou editor do Linha de Código.
Sou Certificado Microsoft MCP, MCAD e MVP, faço parte da comunidade ASPNETI.COM, onde publico artigos, vídeos, ebooks e livros Publico artigos, vídeos e podcast em outras comunidades. Trabalho como Analista de Sistemas / Desenvolvedor na empresa ATP S/A.
Blog:
blog.mauriciojunior.org
Site pessoal: www.mauriciojunior.org