El post que buscas se encuentra eliminado, pero este también te puede interesar

Crear y escribir en archivo con visual Basic.

Crear, mover y escribir en archivo ".txt" en visual Basic durante la ejecución del programa. Se lo puede usar para realizar una adquisición de datos en tiempo real. Por el momento no voy a cambiar de nombre el archivo en este post.

1) Crear un formulario en Visual Basic en "Archivo" luego "Nuevo proyecto" y cuando se abre el asistente elegir "Aplicación de Windows Forms".

Crear y escribir en archivo con visual Basic.

programación

2) Para poder crear, mover y escribir un archivo voy a usar funciones de visual las cuales se encuentran en librerías y hay que declararlas. Sino no funciona y son:

"System" "System.IO" "System.IO.StreamWriter"

Cuando se abre la aplicación hay que hacer doble click en el formulario y aparece una página donde se escribe el código de las librerías y va fuera de "Public Class Form1"

visual basic

crear archivo

3) Antes de crear el archivo, donde se guardan los datos, primero hay que crear una carpeta para almacenar en ella el archivo así queda ordenado.
Una carpeta es en realidad un directorio. Voy a crear la carpeta dentro de "Mys Documentos" la carpeta principal. Para hacerlo primero hay que saber la dirección de la misma y se usa la función;

"My.Computer.FileSystem.SpecialDirectories.MyDocuments"

Que devuelve la dirección de la carpeta Mys documentos y se la asignamos a una variable String la cual llamo "Datos"

Para crear una carpeta usamos la función "My.Computer.FileSystem.CreateDirectory()"

dentro de la función anterior colocamos donde se creará la carpeta. La carpeta la llamo "Libros" y se crea dentro de Mys documentos.
Por lo que hay que anexar el contenido de "Datos" y el nombre de la carpeta a crear para eso uso "&". El nombre de la carpeta lleva primero " " que es el signo de división pero inclinada para el otro lado. Quedando como sigue;
My.Computer.FileSystem.CreateDirectory( Datos & " Libros" )
En la imagen siguiente de ve el signo de división que falta.

mover archivo

Hasta ahora solo hice una carpeta dentro de Mys Documentos. Lo que sigue es realmente crear el archivo dentro de la carpeta "Libros" que se llama "Notas".
Para crear un archivo uso la función;

File.CreateText()

Dentro del paréntesis va la dirección donde crear el archivo y es; Datos & " Libros Notas"
Para no estar copiando cada rato la dirección del archivo defino la variable "ruta" la cual contiene dicha dirección como un String.

Antes de crear el archivo hay que hacer unas definiciones y son:

Dim ruta As String = Datos & "LibrosNotas.txt"
Dim fi As FileInfo = New FileInfo(ruta)
Dim sw As StreamWriter

"fi": contiene la dirección de nuestro archivo a crear.
"sw": Lo vamos a usar para escribir en el archivo.

Crear el archivo;

If File.Exists(ruta) = False Then
sw = File.CreateText(ruta)
sw.WriteLine( "Tiempo: valor:" )
sw.Flush()
sw.Close()
End If

El if es para preguntar si existe el archivo a crear, si ya existe no se vuelve a crear.
El "WriteLine()" es para escribir en el archivo.

La programación que va dentro del formulario es;

Crear y escribir en archivo con visual Basic.

Si ejecutan el archivo verán que dentro de Mys Documentos se crean la carpeta llamada "Libros" y en su interior se encuentra el archivo "Notas"

programación

Hasta ahora se creó una carpeta y un archivo llamados "Libros" y "Notas".

4) Escribir y guardar en el archivo durante la ejecución:
Supongamos que queremos hacer una adquisición de datos en tiempo real y para ello necesitamos una rutina que se ejecute cada cierto tiempo, lo cual hacemos con la función Timer de visual basic.
Para agregar un Timer al formulario lo elegimos del "Cuadro de Herramientas" y lo arrastramos al formulario, donde se pega en la parte inferior del cuadro y fuera del mismo.

visual basic

crear archivo

Hacemos doble click en el ícono del reloj y aparece la ventana de programación con la rutina " Timer1_Tick " y la que dice
" InitializeTimer() " uno la tiene que tipear.
Dentro de la segunda se colocan los parámetros del Timer que son;
El intervalo de tiempo(Cada cuanto se ejecuta) " Timer1.Interval "
Y que no se ejecute al iniciar el programa al depurarlo. " Timer1.Enabled = True "

mover archivo

Dentro de " Timer1_Tick " colocamos la rutina que queremos realizar la cual será escribir dos columnas una que lleve el tiempo y otra que tenga una valor que simula la adquisición de datos.

Para empezar llevar el tiempo de la ejecución implica utilizar una variable que no se borre al terminar la rutina "Timer" y se logra utilizando variables globales. Se declaran fuera de las subrutinas y dentro de " Public Class Form1 " como se muestra;

Public i As Integer = 0
Public t As Double = 0

Crear y escribir en archivo con visual Basic.

Una vez declaradas las variables globales es hora de hacer la sub rutina Timer. Lo primero es buscar el archivo a escribir que se encuentra dentro de la carpeta "Libros" lo hacemos con;

Dim Datos As String = _
My.Computer.FileSystem.SpecialDirectories.MyDocuments
Dim ruta As String = Datos & "LibrosNotas.txt" ' El archivo notas se guarda dentro de Libros.
Dim fi As FileInfo = New FileInfo(ruta)
Dim sw As StreamWriter

Con la variable " i " vamos incrementando el tiempo y con " t " ajustamos el valor para que quede en segundos. Dado que el tiempo de reiteración de la rutina Timer es de 100mseg.

t = i / 10
i = i + 1
Con la función " Convert.ToString( ) " convertimos el número en String así lo podemos escribir en el archivo con la función
" WriteLine() ".

Convert.ToString(t)

Con la variable "g" pasamos los datos que se escribirán en el archivo.

g = j & " " & k

Con " Label1.Text " mostramos en el formulario el tiempo transcurrido. Donde primero pegamos un " Label " en el formulario desde la caja de herramientas.

Label1.Text = j

programación

dentro de la rutina Timer en lugar de asignarle a la variable " r " un valor constante se le puede asignar el valor leído del puerto paralelo lo cual funciona sin problemas. Primero tienen que abrir el puerto al iniciar el programa, dentro de la rutina " Form1_Load ".

Lo único que falta es iniciar y detener la ejecución de la rutina repetitiva con dos botones, uno inicia y el otro detiene. Para eso agregamos dos botones al formulario.

visual basic

crear archivo

Al ejecutar el programa aparece el formulario;

mover archivo

Una vez que detenemos y cerramos la aplicación buscamos si realmente quedó guardado el archivo con las dos columnas.

Crear y escribir en archivo con visual Basic.

Otro método es utilizar Base de datos, pero deben tener bien instalado el Visual Basic o les puede negar su uso, lo cual me sucedió.

Espero que les sirva. Saludos.

Fuentes de Información - Crear y escribir en archivo con visual Basic.

Dar puntos
37 Puntos
Votos: 5 - T!score: 7.5/10
  • 1 Seguidores
  • 13.361 Visitas
  • 2 Favoritos

4 comentarios - Crear y escribir en archivo con visual Basic.

@Yashimaru Hace más de 3 años
sabes como hacer para crear carpetas numeradas dentro de una carpeta donde hay muchos archivos y mover cierta cantidad de estos archivos a cada carpeta creada. Por ejemplo tengo 20.000 imagenes en una carpeta y quiero que en esa carpeta se creen carpetas numeradas "1";"2";etc.. en donde se moveran 1.000 imagenes en cada una, se puede hacer eso?. o conoces algun programa con el cual se pueda hacer eso o alguna forma de hacerlo?.Saludos
@Draconis Hace más de 2 años
Me pareció muy buena la explicación. Gracias
@2222master Hace más de 1 año -5
post p....u....t................o
@Verdammt Hace más de 1 año
+10. Excelente Post. De gran ayuda y muy bien explicado.