Como ler um arquivo CSV no visual basic

Como ler um arquivo CSV no Visual Basic

Valor Separado formato de vírgula (CSV) é um formato comum usado para trocar dados entre os diferentes programas que podem não suportar o formato nativo do outro. Por exemplo, ele pode ser usado para trocar dados da planilha entre Excel e outra planilha ou banco de dados dados entre o Access e MySQL. Visual Basic não contenha 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, 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 CSV no Visual Basic.

  • Criar um novo projeto clicando "Arquivo" e "Novo projeto."

  • Arraste um botão para seu formulário da caixa de ferramentas usando o mouse.

  • Encontre o "OpenFileDialog" controlar e adicioná-lo ao seu formulário também. Uma vez que este controle é inicialmente invisível, ele não aparecerá em sua forma, mas abaixo dela.

  • 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á perguntar ao usuário para um arquivo CSV e carregar seus dados em uma matriz 2D:

    Private Sub Button1_Click (ByVal sender As System.Object, ByVal e As System.EventArgs) Alças Button1.Click
    &# 9-
    &# 9-REM Obter o arquivo que o usuário deseja carregar.
    OpenFileDialog1.ShowDialog ()
    filename Dim As String = OpenFileDialog1.FileName
    Dim fileStream Como System.IO.StreamReader = Novo System.IO.StreamReader (filename)

    &# 9-&# 9-
    &# 9-&# 9-REM Leia todos os dados do arquivo em uma única cadeia.

    Dim conteúdo como String = fileStream.ReadToEnd

    REM dividir a string em seus valores. Após esta operação estiver concluída, haverá uma matriz dimensional de valores, e a extremidade das linhas será marcada por cadeias vazias.

    valores dim = contents.Split ()
    Dim arr Como ArrayList = New ArrayList
    linhas Dim como ArrayList = New ArrayList

    &# 9-&# 9-REM Mova os dados em uma matriz 2D.
    &# 9-&# 9;

    Para x As Integer = 0 Para lines.Length - 1
    Se as linhas (x) IsNot String.Empty seguida
    arr.Add (linhas (x))
    Fim se
    rows.Add (arr.Clone)
    arr.Clear ()
    Próximo

    dados dim (Rows.Count, linhas (0) .Count) As String

    Para x As Integer = 0 Para Rows.Count - 1
    Para y As Integer = 0 To linhas (x) .count - 1
    dados (x, y) = linhas (x) (y)
    Próximo
    Próximo

    End Sub

De esta maneira? Compartilhar em redes sociais:

LiveInternet