Ir para o conteúdo
gastao

Gravar em ficheiro TXT

Mensagens Recomendadas

gastao

boas tou a tentar ler uma query de uma base de dados e gravar o seu resultado num .TXT andei na pesquisa e tou aqui com umas pequenas duvidas de variaveis. alguem me consegue dar uma ajuda

Dim strIniFile As String = My.Application.Info.DirectoryPath & "\config.ini"

'Le qual o caminho das Facturas escrito no Ini

Dim bdsql As String = GetIniSetting("CaminhoBaseDados", "MudaDocumentosSage", strIniFile)
Dim bdnome As String = GetIniSetting("NomeBaseDados", "MudaDocumentosSage", strIniFile)
Dim bduser As String = GetIniSetting("User", "MudaDocumentosSage", strIniFile)
Dim bdpass As String = GetIniSetting("Password", "MudaDocumentosSage", strIniFile)
Dim nomecliente As String = GetIniSetting("Cliente", "MudaDocumentosSage", strIniFile)

'conexao SQL
Dim consql As System.Data.SqlClient.SqlConnection = New System.Data.SqlClient.SqlConnection("Data Source='" & bdsql & "';Initial Catalog='" & bdnome & "'; Integrated Security=false; User Id='" & bduser & "';Password='" & bdpass & "';")

'query
Dim query As String = "SELECT SaleTransactionDetails.ItemID, SaleTransactionDetails.Quantity, SaleTransactionDetails.TaxIncludedPrice FROm SaleTransactionDetails INNER JOIN Item ON SaleTransactionDetails.ItemID = Item.ItemID WHERE SaleTransactionDetails.DtAlt = '2012-02-01'"
Dim command As New SqlCommand(query, consql)
command.ExecuteNonQuery()
dr = command.ExecuteReader

Dim sb As New StringBuilder
While dr.Read()
'vai ler linha por linha StringBuilder
sb.AppendLine(String.Format("{0} | {1} | {2} | {3}",
dr.item("ItemID"), dr.item("Quantity"), dr.item("TaxIncludedPrice")))
End While

'ondecolocar o ficheiro
File.WriteAllLines("D:\teste.txt", sb.ToString())

ta me a dar -> Warning 1 Runtime errors might occur when converting 'String' to 'System.Collections.Generic.IEnumerable(Of String)'.

Editado por gastao
GeSHi

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
NunoDinis

poe uma msgbox do sb e diz-me o que ele retorna sff.

em todo o caso o erro esta em estares a converter o sb para string... vamos ver a melhor maneira de como podemos fazer isso.


Estranha forma de vida que tem a capacidade de transformar comandos em mensagens de erro.

ndsotware.org

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
gastao

MsgBox(sb.ToString)

retoma aquilo que eu pretendo.

por exemplo:

1000|1|-33,34

1000|5|3,29

1000|2,4|2,34

1000|1,42|1,24

...

e por ai fora isto na msgbox ta bacano ;) so que para o file e mentira :(

isto quando eu meto o

File.WriteAllLines("c:\test.txt", sb.ToString()) no sb.tostring aparece me a sublinhado a dar aquela situaçao que coloquei em cima

Editado por Rui Carlos

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!

Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.

Entrar Agora

×

Aviso Sobre Cookies

Ao usar este site você aceita os nossos Termos de Uso e Política de Privacidade. Este site usa cookies para disponibilizar funcionalidades personalizadas. Para mais informações visite esta página.