c.o.souza 0 Denunciar post Postado Janeiro 28, 2009 Olá pessoal, estou tentando gerar um arquivo TXT com informações que vem do banco, porém não está escrevendo, vocês poderiam me dar uma força ? Obs.: Debugando a impressão que tive é que o problema está no argumento do método AppendText Segue o código. // recuperando o caminho do arquivo do Web.Config string strDisp = WebConfigurationManager.AppSettings["informacoes"].ToString(); // Tags no Web Config <appSettings> <add key="informacoes" value="C:\Testando\INFORMACOES.TXT"/> </appSettings> //Laço na DataReader while (dr.Read()) { dados = dr[iId].ToString()+";"; dados += dr[iTempoTotal].ToString().Trim()+";"; dados += dr[iServico].ToString().Trim().Replace(".", ",") + ";"; dados += dr[iProduto].ToString().Trim().Replace(".", ","); for (contDin = 2; contDin < dr.FieldCount - 3; contDin++) { if (dr[contDin].ToString().Replace(".", ",") == "0,000") { dados += "0;"; } else { dados += ";" + dr[contDin].ToString().Replace(".", ","); } } // Escrevendo arquivo using (StreamWriter swInf = File.AppendText(StrNovoArq.ToString())) // Já tentei também sem o "ToString()" swInf.WriteLine(dados.Substring(0, dados.Length - 1).ToString()); Valeu muito obrigado !!! Compartilhar este post Link para o post Compartilhar em outros sites
quintelab 91 Denunciar post Postado Janeiro 29, 2009 De uma olhada nesse artigo: http://www.linhadecodigo.com.br/Artigo.aspx?id=347 Abraços... Compartilhar este post Link para o post Compartilhar em outros sites
pcmm 0 Denunciar post Postado Janeiro 29, 2009 Olá Souza! estive analisando seu código, e percebi que amenos que as variáveis idTempoTotal, iId, etc... passadas pro reader forem strings você não encontrará nada no reader e por isso não conseguirá gravar nada. reescrevi o código... e aparentemente o erro não está no stream: using (IDataReader dr = cmd.ExecuteReader()) { FileInfo file = new FileInfo(@"C:\arquivo.txt"); while (dr.Read()) { using (StreamWriter stream = file.AppendText()) { string formato = "{0};{1};{2};{3};{4}"; stream.Write(string.Format(formato, dr["iId"].ToString(), dr["iTempoTotal"].ToString(), dr["iServico"].ToString(), dr["iProduto"].ToString()).Trim().Replace(".", ",")); } } } Espero ter ajudado! Souza! Você também tem uma função para formatar um campo aparentemente numérico... da mais detalhes que eu posso te passar umas dicas para formatar números.. :') Compartilhar este post Link para o post Compartilhar em outros sites