----- Original Message -----
From: su_betmen nusaputra
To: [email protected]


mas ipinz,
terima kasih buat sarannya, cuman ...
1. cara tsb msh membutuhkan deklarasi type dan public. pdhl maksud saya memasukkan ke headernya itu utk menghilangkan deklarasi type dan public-nya
 
@: Oo. ngono ta.. :D
masih kurang paham juga gw heheh
pertanyaannya kenapa harus header? kenapa gak pake content filenya..
misalnya gunakan file text delimited biasa .. isinya di
line pertama: jmh record;
kedua nama field2 delimiternya misal ';'
ketiga dan seterusnya isi record
 
jadi misal mau jumlah kolom field yg fleksibel tinggal loading line ke-2 dalam array

2. jd, pembentukan deklarasi type dan public-nya seharusnya terbentuk pd saat run time dgn terlebih dahulu membaca header file. (seperti file database biasanya/access), jd kolom2 dr suatu database bisa fleksibel. pokoknya tinggal baca headernya saja.
 
@: variabel gak bisa dibuat saat runtime (tidak seperti PHP atau ASP). Minimal di VB punya satu variabel yang dimodif saat runtime biasanya array atau menggunakan activeX .createobject

3. saya membutuhkan ini krn saya ingin membuat sebuah database berbasis text. saat ini sih sudah ada gambaran, cuman tdk fleksible krn kolom2 databasenya sudah fixed krn sudah dideklarasikan type dan public-nya saat desain.
# misal ada textfile mahasiswa
 
3   '(ini line 1 = jumlah record)
Nim;Nama;Alamat
90210;Anu;Jl. Item
90211;Omas;Jl. Seberang
90211;Gagah;Jl. Belakang
 
trus ini kodenya variabel dinamis dimodul
 
 
 
Function BacaIsiFile(filename As String) As String
    Dim fnum As Integer, isOpen As Boolean
    On Error GoTo Error_Handler
    
    fnum = freefile()

    Open filename For Input As #fnum
    
    isOpen = True
    BacaIsiFile = Input(LOF(fnum), fnum)

Error_Handler:
    
    If isOpen Then Close #fnum 'keharusan
    If Err Then Err.Raise Err.Number, , Err.Description
End Function

Function ImporRecordFile(filename As String, _
    Optional delimiter As String = ";") As Variant()
    Dim lines() As String, i As Long
    'dapatkan semua baris
    lines() = Split(BacaIsiFile(filename), vbCrLf)

   
' untuk membuang baris kosong, load ke spesial karakter
    For i = 0 To UBound(lines)
        If Len(lines(i)) = 0 Then lines(i) = vbNullChar
    Next

    ' lalu gunakan Filter function menghapus vbNullChar
    lines() = Filter(lines(), vbNullChar, False)

    'isi ke variable Anda
    ReDim values(0 To UBound(lines)) As Variant
    For i = 1 To UBound(lines)  'gunakan 1 (bukan angka 0, values(0) untuk jumlah record di line 1) 
        values(i) = Split(lines(i), delimiter)
    Next
    ImporRecordFile = values()
End Function

'nah kita tinggal bekerja di array values()
'jmhRecord => values(0)
'namaField di values(1) => ini array dalam array
'bisa di iterate lewat kode terserah Anda misal:
 
Private Sub Command1_Click()
    Dim values() As Variant
    Dim namaField() As String
   
    values = ImporRecordFile("c:\mhs.txt")
    namaField() = values(1)
    For i = 0 To UBound(namaField)
    Debug.Print namaField(i)
    Next
 
End Sub
 
 
 
 
IpinZ
It may be helps
 
 


Wahana Programmer Groups Links

<*> Untuk mengunjungi sponsor milis ini, klik link berikut:
    http://wahanaprogrammer.net

<*> Untuk menghubungi owner milis ini, kirim email ke:
    [EMAIL PROTECTED]

<*> Konsultasi pemrogramman bisa chat disini:
    Yahoo! Messenger: wahanaprogrammer




SPONSORED LINKS
Programmer Indonesia Basic programming language
Computer programming languages Programming languages Java programming language


YAHOO! GROUPS LINKS




Kirim email ke