Ficheros csv

¿Cómo puedo abrir y recoger lo que hay en un fichero CSV? Estoy realizándolo con INPUT pero no me separa bien lo que hay entre cada ; ya que me pone todas las lineas juntas.

1 Respuesta

Respuesta
1
Tu tienes un código que llega a este punto:
input #1, Variable
Si el archivo CSV tiene cambios de linea, esto quiere decir que contiene al final de cada una un chr$(13), este valor al tenerlo en la variable te indicará que toca un cambio de línea, que en Visual basic se hace chr$(13)+chr$(10), ahora, que si el archivo CSV no tiene cambios de linea, no encontrarás dicho código y en realidad se encuentra así.
Gracias pero creo que no me he explicado bien:
La cuestión es que yo quiero abrir un fichero .csv; dicho fichero contiene muchas lineas. Cada linea tiene separadas por ; conceptos y candidades que yo quiero recoger para pasar a los campos de una base de datos.
¿Me han informado que debo utilizar INPUT #?, wvariable, wvariable, ...
Para separar cada uno de los campos que hay en el fichero (dependiendo del numero de lineas ya que utilizo el Do eof para saber el final del fichero.
El problema es que utilizando el INPUT señalado y asignando tantas variables como ; he contado en el fichero csv.
Cuando lo ejecuto no me mete en las variables que le he asignado ya que en algunas de ellas me mete cantidad de caracteres que en el fichero están separados y me los junta. ¿Puedo estar haciendo algo mal? ¿Es correcto lo de las variables en el INPUT?
En conclusión, lo que deseo es separar lo que hay entre ; y ;.
Gracias, y un saludo
Tienes dos formas de hacer esto:
La primera.
Si quieres pasar dichos datos a una base de datos, lo más seguro es que el software para esa base de datos tenga el filtro CSV.
Por ejemplo:
En Access97, Access 2000, VisualFOX, etc, puedes importar datos externos, y puedes indicar que el archivo tiene formato CSV,
La segunda segunda forma, más controlada pero, con más trabajo es esta.
1.- Deberás abrir tu archivo *. Csv en un procesador de textos (por ejemplo WORD) y mandar que se cambien todos los (;) por (,) que es el separador correcto para las instruccione INPUT e INPUT #
Nota:
--- Si utilizas el sistema de puntuación euripeo, en el que el separador decimal es la (,), entonces te recomiendo que primero cambies dichas (,) por (.)
2.- Graba tu archivo CSV con otro nombre y con extensión CSV
3.- Carga en tu programa el archivo como lo estás haciendo.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas