Gilnet 0 Denunciar post Postado Maio 21, 2010 Olá, Estou precisando ler um arquivo texto e fiz da seguinte forma: public partial class App_Form_Pesquisa_RetornoEscelsa : System.Web.UI.Page { static string sPath = null; StreamReader Arquivo; string linhaAtual; ArrayList Texto = new ArrayList(); protected void Button1_Click(object sender, EventArgs e) { sPath = txtBrowser.FileName.ToString(); Label1.Text = sPath; using (Arquivo = new StreamReader("E:\\" + sPath.ToString())) { while (!Arquivo.EndOfStream) { linhaAtual = Arquivo.ReadLine().ToString(); Texto.Add(linhaAtual); } } txtSaida.Text = Texto[5].ToString(); } } Não sei se essa é a melhor maneira de fazer mas estou com a seguinte dúvida. Como faço pra extrair a letra do driver onde está o arquivo texto utilizando o componente FileUpLoad(txtBrowser). Obs.: Aceito sugestão para o código acima. Obrigado. Compartilhar este post Link para o post Compartilhar em outros sites
Ivan.Teles 23 Denunciar post Postado Maio 21, 2010 Se você for ler todo o arquivo basta: TextReader tr = new StreamReader(Server.MapPath("/App_Data/txt.txt")); string arquivoLido = tr.ReadToEnd(); tr.Close(); tr.Dispose(); Compartilhar este post Link para o post Compartilhar em outros sites
Gilnet 0 Denunciar post Postado Maio 24, 2010 Olá Ivan; Mudei o código conforme sua orientação e fiz uma cópia do arquivo a ser lido para a pasta App_Data dentro do site porém, quando rodo a página, apresenta um erro dizendo que o arquivo texto.txt não foi localizado. Na verdade, gostaria de pode ler o arquivo de qualquer pasta na máquina do cliente e não no raiz do site e pra isso estou usando o FileUpLoad mas só estou conseguindo pegar o caminho físico sem a letra do driver. ex. texto.txt mas preciso de: E:\texto.txt Algumas dúvidas: Como faço pra inserir quebra de linha na variável que contém o arquivo lido, pois, preciso que o conteúdo fique armazenado uma linha após a outra. Como faço para ler o conteúdo da linha 5 dessa variável já que ela não é um ARRAY. ex. Response.Write(ArquivoLido[5]); Obrigado. Compartilhar este post Link para o post Compartilhar em outros sites
Ivan.Teles 23 Denunciar post Postado Maio 24, 2010 Olha só para poder ler oarquivo primeiro atraves do file upload você tem q enviar o arquivo pro server e depois lê-lo. Sobre a quebra de linha tem q analizar melhor pra poder fazer! Compartilhar este post Link para o post Compartilhar em outros sites
Gilnet 0 Denunciar post Postado Maio 24, 2010 Olá, Fui pesquisando na net e seguindo algumas dicas então cheguei ao código abaixo: public partial class App_Form_Pesquisa_RetornoEscelsa : System.Web.UI.Page { ArrayList Texto = new ArrayList(); int i = 0; protected void Button1_Click(object sender, EventArgs e) { Local = Request.PhysicalApplicationPath.Substring(0, 2); sPath = txtBrowser.FileName.ToString(); StreamReader SR; string S = string.Empty; SR = File.OpenText("E:\\" + sPath); S = SR.ReadLine(); i = 0; while (S != null) { S = SR.ReadLine(); Texto.Add(S.ToString()); i = i + 1; Response.Write(S + "<br>"); } SR.Close(); Response.Write(Texto[1]); } } Quando rodo a página, dá o seguinte erro: Referência de objeto não definida para uma instância de um objeto na linha - Texto.Add(S.ToString()); Obrigado. Compartilhar este post Link para o post Compartilhar em outros sites
Gilnet 0 Denunciar post Postado Maio 24, 2010 OK...problema solucionado. O último código postado, resolveu meu problema e o erro estava na linha Texto.Add(S.ToString()); que na verdade deve ser Texto.Add(S) não contendo o .ToString. Mas mesmo assim, continuo aceitando sugestão. Obrigado. Compartilhar este post Link para o post Compartilhar em outros sites