Foros del Web » Programación para mayores de 30 ;) » .NET »

ficheros de texto desde vb.net

Estas en el tema de ficheros de texto desde vb.net en el foro de .NET en Foros del Web. Hola tengo que crear un .txt y escribir en él los resultados de una consulta, he konseguido krear el txt pero no me escribe nada. ...
  #1 (permalink)  
Antiguo 14/11/2008, 06:22
 
Fecha de Ingreso: octubre-2008
Mensajes: 42
Antigüedad: 15 años, 6 meses
Puntos: 0
ficheros de texto desde vb.net

Hola tengo que crear un .txt y escribir en él los resultados de una consulta, he konseguido krear el txt pero no me escribe nada. Alguien me puede decir como lo korrijo?

Protected Sub aulasLibres_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles aulasLibres.Click
Dim fecha As String = TextBox1.Text
Dim cnn As OleDbConnection
Dim resul2 As OleDbDataReader
Dim objds, objds1, objds2 As New DataSet
Dim Num As New DataTable("Num")

Const ForReading = 1, ForWriting = 2, ForAppending = 8
Dim fso, f
fso = CreateObject("Scripting.FileSystemObject")
f = fso.OpenTextFile("c:\impresion.txt", ForWriting, True)
'f.Write("Hola se ha escrito el archivo!")


cnn = New OleDbConnection("Provider = Microsoft.Jet.OLEDB.4.0; Data Source = C:\Documents and Settings\Bea.BEA-095B12391FA\Mis documentos\Visual Studio 2005\WebSites\GestionAulas\App_Data\gestionaulas.m db")
cnn.Open()

Dim query As String = "SELECT Numclase,DNIUsu,HoraInicio,HoraFin,Motivo FROM Reserva WHERE Fecha =" & fecha & " "
'Response.Write(query)

Dim objCmd As New OleDbCommand(query, cnn)
resul2 = objCmd.ExecuteReader()
Dim g As String = String.Empty
While resul2.Read()
g = resul2.GetString(0)
f.Write(g)

End While


f.close()


End Sub

Última edición por beamm; 14/11/2008 a las 06:50
  #2 (permalink)  
Antiguo 14/11/2008, 07:08
 
Fecha de Ingreso: octubre-2008
Mensajes: 42
Antigüedad: 15 años, 6 meses
Puntos: 0
Respuesta: ficheros de texto desde vb.net

Tb he probado este otro codigo y tampoko me escribe, por favor que alguien me ayude

Protected Sub aulasLibres_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles aulasLibres.Click
Dim fecha As String = TextBox1.Text
Dim cnn As OleDbConnection
Dim resul2 As OleDbDataReader
Dim objds As New DataSet
Dim fe As New DataTable("fe")
Dim strconexion As String
Dim objconexion As OleDbConnection
Dim objcomando As OleDbDataAdapter

Dim nc As Integer
Dim hi As String
Dim hf As String
Dim m As String


Const ForReading = 1, ForWriting = 2, ForAppending = 8
Dim fso, f
fso = CreateObject("Scripting.FileSystemObject")
f = fso.OpenTextFile("c:\impresion.txt", ForWriting, True)
'f.Write("Hola se ha escrito el archivo!")





strconexion = "Provider = Microsoft.Jet.OLEDB.4.0; Data Source = C:\Documents and Settings\Bea.BEA-095B12391FA\Mis documentos\Visual Studio 2005\WebSites\GestionAulas\App_Data\gestionaulas.m db"

objconexion = New OleDbConnection(strconexion)
objconexion.Open()
objcomando = New OleDbDataAdapter("select NumClase,HoraInicio,HoraFin,Motivo from Reserva where Fecha=" & fecha & "", objconexion)
objcomando.Fill(objds, "fe")
Dim fila As DataRow
For Each fila In objds.Tables("fe").Rows
hi = CStr(fila("hi"))
hf = CStr(fila("hf"))
m = CStr(fila("m"))
f.writeline(hi & " " & hf & " - " & m)

Next

f.close()


End Sub
  #3 (permalink)  
Antiguo 14/11/2008, 07:26
Avatar de Peterpay
Colaborador
 
Fecha de Ingreso: septiembre-2007
Ubicación: San Francisco, United States
Mensajes: 3.858
Antigüedad: 16 años, 8 meses
Puntos: 87
Respuesta: ficheros de texto desde vb.net

Es windows o web tu aplicacion

si quieres escribir usa un StreamWriter

bool apendiza=true o false; // esto ya depende de ti
StreamWriter flujoEscritura=new StreamWriter(rutaArchivo,apendiza);

flujoEscritura.WriteLine(lineaAEscribir);

fluejoEscritura.Close();

es practicamente lo mismo en VB:net solo cambia la sintaxis basica pero no mas, las funciones son iguales. ojo q si es una aplicacion web rutaArchivo necesita ser mapeada usando Server.MapPath o Application.BaseDirectory + los n directorios de la ruta.
__________________
Curso WF4
http://cursos.gurudotnet.com/ DF
Aprende HTML5
  #4 (permalink)  
Antiguo 14/11/2008, 09:06
 
Fecha de Ingreso: octubre-2008
Mensajes: 42
Antigüedad: 15 años, 6 meses
Puntos: 0
Respuesta: ficheros de texto desde vb.net

Si, ya consigo q me escriba en el fichero pero no el resultado de la consulta,jejej, he puesto esto:

Dim fecha As String = TextBox1.Text
Dim cnn As OleDbConnection
Dim resul2 As OleDbDataReader
Dim objds, objds1, objds2 As New DataSet
Dim Num As New DataTable("Num")

Const ForReading = 1, ForWriting = 2, ForAppending = 8
Dim fso, f
fso = CreateObject("Scripting.FileSystemObject")
f = fso.OpenTextFile("c:\impresion.txt", ForWriting, True)
'f.Write("Hola se ha escrito el archivo!")
f.close()

cnn = New OleDbConnection("Provider = Microsoft.Jet.OLEDB.4.0; Data Source = C:\Documents and Settings\Bea.BEA-095B12391FA\Mis documentos\Visual Studio 2005\WebSites\GestionAulas\App_Data\gestionaulas.m db")
cnn.Open()

Dim query As String = "SELECT Numclase,DNIUsu,HoraInicio,HoraFin,Motivo FROM Reserva WHERE Fecha =" & fecha & " "
'Response.Write(query)

Dim objCmd As New OleDbCommand(query, cnn)
resul2 = objCmd.ExecuteReader()
Dim apendiza As Boolean = True
Dim flujoEscritura As StreamWriter = New StreamWriter("c:\impresion.txt", apendiza)

flujoEscritura.WriteLine(resul2)

flujoEscritura.Close()

cnn.Close()



Pero lo q me escribe es: System.Data.OleDb.OleDbDataReader

Última edición por beamm; 14/11/2008 a las 09:17
  #5 (permalink)  
Antiguo 14/11/2008, 09:55
 
Fecha de Ingreso: octubre-2008
Mensajes: 42
Antigüedad: 15 años, 6 meses
Puntos: 0
Respuesta: ficheros de texto desde vb.net

He intentado esto pero tampoko me escribe, por favor ayudenme...


Protected Sub aulasLibres_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles aulasLibres.Click
Dim fecha As String = TextBox1.Text
Dim cnn As OleDbConnection
Dim resul2 As OleDbDataReader
Dim objds As New DataSet
Dim fe As New DataTable("num")
fe.Columns.Add("hi", Type.GetType("System.String"))
fe.Columns.Add("hf", Type.GetType("System.String"))
fe.Columns.Add("m", Type.GetType("System.String"))


Dim strconexion As String
Dim objconexion As OleDbConnection
Dim objcomando As OleDbDataAdapter




Const ForReading = 1, ForWriting = 2, ForAppending = 8
Dim fso, f
fso = CreateObject("Scripting.FileSystemObject")
f = fso.OpenTextFile("c:\impresion.txt", ForWriting, True)
'f.Write("Hola se ha escrito el archivo!")
f.close()




strconexion = "Provider = Microsoft.Jet.OLEDB.4.0; Data Source = C:\Documents and Settings\Bea.BEA-095B12391FA\Mis documentos\Visual Studio 2005\WebSites\GestionAulas\App_Data\gestionaulas.m db"

objconexion = New OleDbConnection(strconexion)
objconexion.Open()
objcomando = New OleDbDataAdapter("select HoraInicio,HoraFin,Motivo from Reserva where Fecha='" & fecha & "'", objconexion)
objcomando.Fill(objds, "fe")
Dim apendiza As Boolean = False
Dim flujoEscritura As StreamWriter = New StreamWriter("c:\impresion.txt", apendiza)
Dim fila As DataRow
For Each fila In objds.Tables("fe").Rows
flujoEscritura.WriteLine(objds.Tables(fila(0)))
Next
flujoEscritura.Close()

objconexion.Close()

End Sub
  #6 (permalink)  
Antiguo 14/11/2008, 10:07
Avatar de Peterpay
Colaborador
 
Fecha de Ingreso: septiembre-2007
Ubicación: San Francisco, United States
Mensajes: 3.858
Antigüedad: 16 años, 8 meses
Puntos: 87
Respuesta: ficheros de texto desde vb.net

tienes q recorrer el datareader algo como

while datareader.Read()

FLUJOESCRITURA.WRITELINE(datareader.GetValue(0).To String() ......) usa un string para unir esos campos.

end while
__________________
Curso WF4
http://cursos.gurudotnet.com/ DF
Aprende HTML5
  #7 (permalink)  
Antiguo 14/11/2008, 10:25
 
Fecha de Ingreso: octubre-2008
Mensajes: 42
Antigüedad: 15 años, 6 meses
Puntos: 0
Respuesta: ficheros de texto desde vb.net

Si, eso intento pero por mas q lo intento no me sale, ahora tengo este código:

Protected Sub aulasLibres_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles aulasLibres.Click
Dim fecha As String = TextBox1.Text
Dim cnn As OleDbConnection
Dim resul2 As OleDbDataReader
Dim objds, objds1, objds2 As New DataSet
Dim Num As New DataTable("Num")

Const ForReading = 1, ForWriting = 2, ForAppending = 8
Dim fso, f
fso = CreateObject("Scripting.FileSystemObject")
f = fso.OpenTextFile("c:\impresion.txt", ForWriting, True)
'f.Write("Hola se ha escrito el archivo!")
f.close()

cnn = New OleDbConnection("Provider = Microsoft.Jet.OLEDB.4.0; Data Source = C:\Documents and Settings\Bea.BEA-095B12391FA\Mis documentos\Visual Studio 2005\WebSites\GestionAulas\App_Data\gestionaulas.m db")
cnn.Open()

Dim query As String = "SELECT Numclase,DNIUsu,HoraInicio,HoraFin,Motivo FROM Reserva WHERE Fecha =" & fecha & " "
'Response.Write(query)

Dim objCmd As New OleDbCommand(query, cnn)
resul2 = objCmd.ExecuteReader()
Dim apendiza As Boolean = True
Dim flujoEscritura As StreamWriter = New StreamWriter("c:\impresion.txt", apendiza)
While resul2.Read()

flujoEscritura.WriteLine(resul2.GetValue(0).ToStri ng())

End While


flujoEscritura.Close()

cnn.Close()

End Sub



Pero no me imprime nada en el txt. Yo creo que es algun problema de q mi datatable solo rekoge un campo y no todos los que le pido o algo así, pero esk no tengo ni idea... Espero que puedas ayudarme con esto ...perdona las molestias
  #8 (permalink)  
Antiguo 14/11/2008, 11:26
 
Fecha de Ingreso: octubre-2008
Mensajes: 42
Antigüedad: 15 años, 6 meses
Puntos: 0
Respuesta: ficheros de texto desde vb.net

Ya encontre la solucion, gracias x todo

Última edición por beamm; 14/11/2008 a las 14:40
  #9 (permalink)  
Antiguo 18/11/2008, 08:38
 
Fecha de Ingreso: junio-2003
Ubicación: Asturias
Mensajes: 2.429
Antigüedad: 20 años, 11 meses
Puntos: 7
Respuesta: ficheros de texto desde vb.net

Y cual es ?
__________________
Charlie.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 07:53.