Lebih dari lima bulan yang lalu (yeah udah lima bulan baru dipostnya sekarang :D) aq dapet tugas gimana caranya supaya semua data yang ada di file excel bisa masuk dalam database mysql dari program yg sedang kami (aq sebagai programmer ~satu-satunya :( dan oom bule belanda sebagai analis) bangun. Sempet aq berpikir pake fasilitas mysql LOAD DATA INFILE
atau malah lebih gampang lagi pake fasilitas import *.csv file pake program-program GUI mysql. Ternyata permasalahannya tak sesimpel itu. Data yang harus aq masukkan itu saling berhubungan alias harus ada relationship dengan tabel lainnya, kayak master detail geto deh… Apalagi kalau ada data yang sama harus direplace, belum lagi kalau ternyata ada tambahan detail lagi. Macam mana itu bisa dilakukan dengan cara LOAD DATA INFILE
atau export *.csv file???
Satu-satunya cara ya aq harus bikin converter sendiri dari tuh file-file excel. Gak mungkin dunkz input satu persatu data ribuan gto. Oke deh cukup intronya, sekarang aq mau nerangin konsep yang aq pake buat bikin converter. Yang aq convert di sini bukan file dalam bentuk excel tapi dalam bentuk file txt. Knp kok g langsung dari file excel aja kan bisa? Iya emang bisa kita pake library Microsoft.Office.Interop.Excel
tinggal baca row mana dan column mana. Tapi menurut aq ribet untuk system yang aq bikin (yeee bilang aja kagak bisa gto aja repot hehehe…), jadi ya diexport aja ke tabbed text. Tinggal split string yang dipisahin ama karakter tab, kagak perlu ribet mikirin perhitungan row sama column kan hehehe……
Konsep yang aq pake buat converternya lebih kurang kayak aplikasi pembacaan file txt ini. Gini nih cara bikinnya :
-
Siapin sebuah form dengan komponen 2 buah Label, 1 buah Textbox, 2 buah Button, 1 buah Listbox dan 1 buah OpenFileDialog. Atur posisi sedemikian rupa.
-
Ketikkan code dibawah ini :
-
Jalankan program dan pilih file text yang akan dibaca.
-
Lalu gimana kalo baca tabbed text yg tadi udah aq export dari excel? Dari konsep pembacaan file yg aq contohin itu, kita baca string yang dibatasi oleh karakter tab dan kita simpan dalam variabel array
ReadString = mystream.ReadLine
readarray = ReadString.Split(Chr(9)) -
Dari array tersebut kita bisa simpen dalam database.
InsertData(readarray(0), readarray(1), readarray(2), readarray(3))
Public Class Form1
Dim strFileName As String
Private Sub BtSelect_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BtSelect.Click
Dim AmbilFile As New OpenFileDialog
AmbilFile.CheckFileExists = True
AmbilFile.Filter = "TXT File (*.txt) | *.txt"
AmbilFile.Title = "Pilih TXT File aja, jangan yg lain"
AmbilFile.Multiselect = False
AmbilFile.ShowDialog()
strFileName = AmbilFile.FileName
TextBox1.Text = strFileName
End Sub
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim mystream As New System.IO.StreamReader(strFileName)
Dim BacaString As String
Dim TextPerBaris As String = ""
Me.ListBox1.Items.Clear()
While Not (mystream.EndOfStream)
BacaString = mystream.ReadLine
Me.ListBox1.Items.Add(BacaString)
End While
End Sub
End Class
Responses
0 Respones to "Baca File *.txt dari VB.Net"
Post a Comment