Formato valores separados por comas ( CSV ) es un formato común para el intercambio de datos entre diferentes programas que no admitan el formato nativo del otro. Por ejemplo , se puede utilizar para intercambiar datos entre la hoja de cálculo Excel y otra hoja de cálculo o base de datos de los datos entre Access y MySQL . Visual Basic no contiene una función automática para la carga de archivos CSV , sin embargo una de las razones de su apoyo generalizado es su simplicidad . Como su nombre lo indica, los archivos CSV no son más que una lista de valores , separados por una coma o una línea nueva. Es bastante simple para crear un lector CSV en Visual Basic . Instrucciones
1
Crear un nuevo proyecto haciendo clic en "Archivo" y "Nuevo proyecto ".
2
Arrastre un botón en el formulario de la caja de herramientas con el mouse.
3
Encuentre el control " OpenFileDialog " y agregarlo a su forma también. Dado que este control es inicialmente invisible , no aparece en su forma , sino debajo de ella.
4 Haga doble clic en el botón para crear un evento que tendrá lugar cada vez que el usuario hace clic en el botón. Pega el siguiente código que le pedirá al usuario un archivo CSV y cargar sus datos en un array 2D :
Private Sub Button1_Click ( remitente de ByVal como System.Object , ByVal e como System.EventArgs ) Handles Button1.Click REM Obtenga el archivo que el usuario quiera load.OpenFileDialog1.ShowDialog () Dim nombre As String = OpenFileDialog1.FileNameDim fileStream Como System.IO.StreamReader = New System.IO.StreamReader ( nombre de archivo) REM Leer todos los datos del archivo en un individuales contenidos string.Dim As String = fileStream.ReadToEnd
REM dividir la cadena en sus valores. Una vez finalizada esta operación , habrá una matriz bidimensional de valores , y el final de las filas se caracteriza por cadenas vacías.
Valores Dim
= contents.Split () arr As New ArrayList = ArrayListDim filas como ArrayList = New ArrayList
REM Mover los datos en una matriz 2D. Para x As Integer = 0 Para lines.Length - líneas 1 si (x ) IsNot String.Empty Thenarr.Add ( líneas ( x )) End Ifrows.Add ( arr.Clone ) arr.Clear () Next
datos Dim ( Rows.Count , filas ( 0 ) cuentan. ) As String
Para x As Integer = 0 Para Rows.Count - y 1Para As Integer = 0 To filas ( x) cuenta - . 1data (x , y) = filas ( x) ( y) NextNext
End Sub