Lendo Arquivo txt usando Visual Studio.NET 2005
Olá pessoal, meu nome é Mauricio Junior. Estou disposto a ensinar e mostrar com exemplos práticos como ler texto dentro de um arquivo de extensão ”txt”.
O artigo anterior, mostrei como criar um arquivo de mesma extensão, depois de criar um arquivo, é necessário ler o mesmo e mostrar em tela.
Requisitos:
- Instalar Framework 2.0;
- Ter instalado o Visual Studio.NET 2005;
- Conhecimento básico de C#.NET 2.0;
- Ler o artigo anterior.
De acordo com o artigo anterior, criei uma classe chamada Arquivo.cs, Criei um método responsável em criar um arquivo txt com a data do dia em um local especificado dentro do arquivo de configuração web.config.
Para ler e mostrar na tela um arquivo txt, é necessário criar um outro método responsável apenas por ler e retornar o valor. O nome do método é: LerArquivo().
O caminho será usado o mesmo do arquivo de configuração. (Ler.1.1)
<appSettings>
<add key="enderecoArquivo" value="C:\Documents and Settings\mauricio.junior\Desktop\Escrevendo arquivo texto\code"/>
</appSettings>
|
Referência: Ler.1.1
Dentro da classe “Arquivo.cs” como falado anteriormente, criei um novo método; mas antes de mostrá-lo, adicionei uma variável e gerei Get e Set. (Ler.1.2)
#region get set
public static string sPath;
public static string SPath
{
get { return sPath; }
set { sPath = value; }
}
#endregion
|
Referência: Ler.1.2
Criei essa variável (Referência Ler.1.2) apenas para guardar o caminho especificado.
O próximo passo foi declarar uma nova variável chamada retorno. Irei armazenar todos os valores do txt dentro dessa variável e retorná-la ao método que chamou. (Referência Ler 1.3)
public string retorno;
|
Referência: Ler.1.3
Passei agora para criação do método chamado LerArquivo(). (Referência Ler.1.4)
public String LerArquivo()
{
SPath = @"" + System.Configuration.ConfigurationManager.AppSettings["enderecoArquivo"].ToString() + "\\" + DateTime.Now.Day + ".txt";
string s = "";
try
{
FileInfo fi = new FileInfo(SPath);
using (StreamReader sr = fi.OpenText())
{
while ((s = sr.ReadLine()) != null)
{
retorno = retorno + s + "<br>";
}
}
return retorno;
}
catch (Exception ex)
{
throw ex;
}
}
|
Referência: Ler.1.4
Explicação:
public String LerArquivo()
|
Referência: Ler.1.5
Analisando a assinatura do método, é pública, não recebe parâmetro algum e retorna valores do tipo string.
SPath = @"" + System.Configuration.ConfigurationManager.AppSettings["enderecoArquivo"].ToString() + "\\" + DateTime.Now.Day + ".txt";
string s = "";
|
Referência: Ler.1.6
A referência (Ler.1.6) atribuo a variável SPath criada anteriormente com Get e Set o valor do arquivo de configuração adicionado. Declarei outra variável do tipo string chamada “s”. Atribui o valor vazio a ela.
try
{
FileInfo fi = new FileInfo(SPath);
using (StreamReader sr = fi.OpenText())
{
while ((s = sr.ReadLine()) != null)
{
retorno = retorno + s + "<br>";
}
}
return retorno;
}
|
Referência: Ler.1.7
Explicação:
Dentro do bloco “try”, utilizei o “FileInfo” da mesma forma do artigo anterior citado no início. Criei uma variável do tipo FileInfo colocando o endereço do arquivo, com isso adicionei a SPath.
O passo seguinte, abri o arquivo e enquanto o StreamReader for diferente de null, adiciono a variável “s” à variável retorno. No final coloco o comando return retorno.
catch (Exception ex)
{
throw ex;
}
|
Referência: Ler.1.8
Dentro do bloco “catch”, apenas mostro throw ex; para retornar o erro na página ou método que o chamou.
A referência (Ler.1.9) mostro apenas todo o método criado.
Referência: Ler.1.9
Depois que criei todo método responsável em ler o arquivo e retornar os valores, só me resta chamá-lo na página “default.aspx.cs”. (Referência Ler.1.10)
Abri a página “default.aspx” e fui direto para o code behing. Adicionei as seguintes linhas. (Referência Ler.1.10)
protected void Page_Load(object sender, EventArgs e)
{
Arquivo arq = new Arquivo();
Response.Write(arq.LerArquivo());
}
|
Referência: Ler.1.10
Criei uma instância da classe “Arquivo”, na segunda linha coloquei o comando para escrever na tela “Response.Write” e dentro do parênteses, coloquei a variável criada mais o nome do método criado, ou seja, “Response.Write(arq.LerArquivo());”.
Referência: Ler.1.11
A referência (Ler.1.11) mostro apenas como ficou o método na página “default.aspx”.
Iniciei o projeto apertando F5 e logo apareceu a referência (Ler.1.12), ou seja, o que está escrito dentro do arquivo texto.
Referência: Ler.1.12
Bom, fico por aqui com mais um artigo.
Espero ter ajudado.
Qualquer dúvida, favor entrar em contato via e-mail mauricio@aspneti.com.
Livros publicados:
Mauricio Junior
Sign up to our newsletter
Receive our latest updates about programming languages, software, database, books, ebooks, classes, jobs and more.