Comma Separated Value (CSV ) é um formato comum usado para troca de dados entre diferentes programas que não podem suportar o formato nativo do outro. Por exemplo, ele pode ser usado para troca de dados entre o Excel de planilhas e outra planilha ou banco de dados de dados entre o Access e MySQL . O Visual Basic não conter uma função automática para carregar arquivos CSV , no entanto uma das razões para o seu apoio generalizado é a sua simplicidade. Como o nome indica , os arquivos CSV são nada além de uma lista de valores, separados por uma vírgula ou uma nova linha. É bastante simples para criar um leitor de CSV em Visual Basic. Instruções
1
Crie um novo projeto , clicando em " Arquivo" e " New Project ".
2
Arraste um botão para o formulário na caixa de ferramentas usando o seu mouse.
3
Encontre o controle " OpenFileDialog " e adicioná-lo à sua forma também. Uma vez que este controle é inicialmente invisível, ele não aparecerá em sua forma, mas sim por baixo.
4
Dê um duplo clique no botão para criar um evento que irá ocorrer sempre que o usuário clica no botão. Cole o seguinte código que irá pedir ao usuário para um arquivo CSV e carregar seus dados em uma matriz 2D :
Private Sub Button1_Click (sender System.Object , ByVal e As System.EventArgs ) Handles Button1.Click REM Obter o arquivo que o usuário deseja load.OpenFileDialog1.ShowDialog () Dim nome as String = OpenFileDialog1.FileNameDim fileStream Como System.IO.StreamReader = Novo System.IO.StreamReader (filename) REM Leia todos os dados do arquivo em um conteúdo único string.Dim as String = fileStream.ReadToEnd
REM dividir a string em seus valores. Após esta operação estiver concluída, haverá uma uma matriz dimensional de valores , e no final das linhas será marcado por strings vazias.
Valores Dim = contents.Split () Dim arr Como ArrayList = Novo ArrayListDim linhas como ArrayList = New ArrayList
REM Mova os dados em uma matriz 2D . Para x As Integer = 0 To lines.Length - linhas 1Se (x) IsNot String.Empty Thenarr.Add ( linhas (x)) End Ifrows.Add ( arr.Clone ) arr.Clear ( ) Next
dados dim ( . Rows.Count , linhas (0) contam) As String
Para x As Integer = 0 To Rows.Count - . 1Para y As Integer = 0 To linhas (x ) contam - 1Dados (x , y) = linhas (x) (y) NextNext
End Sub