Crear archivos de texto en vb.net
Que tal, en esta caso veremos como crar un archivo de texto en vb.net, verificaremos si existe la carpeta donde se guardara el archivo y si no se creara.
Lo primero es utilizar el espacio de nombre system.IO como se ve en el codigo siguiente:
Imports System.IO ' esta a al principio de todo nuestro codigo
Despues dentro del procedimiento:
Dim sRenglon As String = Nothing
Dim strStreamW As Stream = Nothing
Dim strStreamWriter As StreamWriter = Nothing
Dim ContenidoArchivo As String = Nothing
' Donde guardamos los paths de los archivos que vamos a estar utilizando ..
Dim PathArchivo As String
Dim i As Integer
Try
If Directory.Exists("C:\Capeta") = False Then ' si no existe la carpeta se crea
Directory.CreateDirectory("C:\carpeta")
End If
Windows.Forms.Cursor.Current = Cursors.WaitCursor
PathArchivo = "C:\carpeta\Archivo" & Format(Today.Date, "ddMMyyyy") & ".txt" ' Se determina el nombre del archivo con la fecha actual
'verificamos si existe el archivo
If File.Exists(PathArchivo) Then
strStreamW = File.Open(PathArchivo, FileMode.Open) 'Abrimos el archivo
Else
strStreamW = File.Create(PathArchivo) ' lo creamos
End If
strStreamWriter = New StreamWriter(strStreamW, System.Text.Encoding.Default) ' tipo de codificacion para escritura
'escribimos en el archivo
strStreamWriter.WriteLine( "Primera linea en un archivo txt desde visual basic.Net" )
strStreamWriter.Close() ' cerramos
Catch ex As Exception
MsgBox("Error al Guardar la ingormacion en el archivo. " & ex.ToString, MsgBoxStyle.Critical, Application.ProductName)
strStreamWriter.Close() ' cerramos
End Try
Lo primero es utilizar el espacio de nombre system.IO como se ve en el codigo siguiente:
Imports System.IO ' esta a al principio de todo nuestro codigo
Despues dentro del procedimiento:
Dim sRenglon As String = Nothing
Dim strStreamW As Stream = Nothing
Dim strStreamWriter As StreamWriter = Nothing
Dim ContenidoArchivo As String = Nothing
' Donde guardamos los paths de los archivos que vamos a estar utilizando ..
Dim PathArchivo As String
Dim i As Integer
Try
If Directory.Exists("C:\Capeta") = False Then ' si no existe la carpeta se crea
Directory.CreateDirectory("C:\carpeta")
End If
Windows.Forms.Cursor.Current = Cursors.WaitCursor
PathArchivo = "C:\carpeta\Archivo" & Format(Today.Date, "ddMMyyyy") & ".txt" ' Se determina el nombre del archivo con la fecha actual
'verificamos si existe el archivo
If File.Exists(PathArchivo) Then
strStreamW = File.Open(PathArchivo, FileMode.Open) 'Abrimos el archivo
Else
strStreamW = File.Create(PathArchivo) ' lo creamos
End If
strStreamWriter = New StreamWriter(strStreamW, System.Text.Encoding.Default) ' tipo de codificacion para escritura
'escribimos en el archivo
strStreamWriter.WriteLine( "Primera linea en un archivo txt desde visual basic.Net" )
strStreamWriter.Close() ' cerramos
Catch ex As Exception
MsgBox("Error al Guardar la ingormacion en el archivo. " & ex.ToString, MsgBoxStyle.Critical, Application.ProductName)
strStreamWriter.Close() ' cerramos
End Try
Muy buena publicacion. Funciona de maravilla
ResponderEliminarguau! muy bueno, venía buscando esto desde hace rato, y me funcionó de primera, gracias! (sobra esto: Dim i As Integer, ¿puede ser?). Te hago una consulta, ¿cómo pongo el contenido de la ListBox1 en ese txt? soy novato, estoy aprendiendo de a poco ;)
ResponderEliminarde nuevo gracias y felicitaciones por la iniciativa
Pablo
Explicame un poco mas y con gusto se te ayuda
ResponderEliminarYo quiero que por ejemplo al pulsar el botón "button1"
ResponderEliminarcree un archivo de texto que tenga escrito por ejemplo, lo que dice el label1
y que se llame lo que dice el label2
en la ruta c:\
Me explique? soy novato.
Muy buenas tardes Pako, soy de Asuncion Paraguay y tengo el siguiente problemita, estoy haciendo una aplicacion mobil con un colector de datos, el programita es para inventario que tiene un simple cuadro de texto que al activarse el lector lee un codigo, lo pasa al cuadro de texto y al darle enter se escribe en un fichero de texto dentro del dispositivo, hasta ahi todo bien, pero me piden que se valide que no se lea dos veces el mismo codigo, o sea no se inserte en el txt dos veces el mismo codigo ya que lo escribo uno debajo del otro.
ResponderEliminarte paso mi codigo
Imports System.IO
Public Class Form1
'Dim strStreamW As Stream
Dim strStreamWriter As StreamWriter
Dim FilePath As String = ("\Archivos de programa\scan.txt")
Private Sub txtCodigo_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtCodigo.KeyPress
If e.KeyChar = Microsoft.VisualBasic.ChrW(13) Then
'
' abrir el archivo y escribir el codigo
'
strStreamWriter = New StreamWriter(FilePath, True)
strStreamWriter.WriteLine(txtCodigo.Text)
'
' cerrar el archivo
'
strStreamWriter.Close()
'
' limpiar y enfocar el codigo
'
Me.txtCodigo.Text = ""
Me.txtCodigo.Focus()
End If
End Sub
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
Close()
End Sub
End Class
Agradeceria mucho tu respuesta.
mi correo es hportillo@segel.com.py
Saludos desde Paraguay
gracias muchas gracias estaba desarrollando un reconocimiento de voz y esto me sirvio bastante para guardar el historial 100 puntos
ResponderEliminarHola tengo un problema estoy creando un log de errores por ejemplo en un caso el log se llena de dos lineas de errores la primera
ResponderEliminar1."no se puede hayar la ruta...."
y la segunda
2."archivo no encontrado"
pero cuando la ultima linea se escribe en el txt borra parte de la linea anterior y queda
1. "hayar la ruta..."
2. "Archivo no encontrado"
Que puedo hacer para que no suceda esto.
Saludos y gracias.
Si quisiera rutear a un archivo de otra pc cual sería la sintaxis o el formato he estado usando :
ResponderEliminarDirectory.Exists("\\192.168.10.9\log_errore")
y así en las demas sentencias...
Muchas gracias por la información de este blog...
ResponderEliminarQue tal, deberia de funcionar son solo poner la ruta de red donde estaria el archivo, solo hay que reviusar los permisos, te comento, este blog lo cree ya hace tiempo... pero si necesitas ayuda avisame y lo vamos viendo.
EliminarSaludos.
Este comentario ha sido eliminado por el autor.
ResponderEliminar