Warning: Illegal string offset 'status' in /home2/icentarb/public_html/icentar/print.php on line 190

Warning: Illegal string offset 'status' in /home2/icentarb/public_html/icentar/print.php on line 190
iCentar » Racunari i oprema » Programirannje i baze podataka » Access » Import iz txt
Gjoreski 25.06.2015 19:56
Predmet:Re: Import iz txt

eve ti loop gi cita site redovi od pocetok do kraj:
PreuzmiIzvorni kôd (Visual Basic):
  1. Dim strVlez As String
  2.          Open "C:\zipTest\data.txt" For Input As 1
  3.              Do
  4.            
  5.                 Line Input #1, strVlez
  6.                 MsgBox strVlez
  7.             Loop Until EOF(1)
  8.             Close 1

Ova cita dve linii mozes da dodadis kolku sakas

PreuzmiIzvorni kôd (Visual Basic):
  1.   Dim strVlez As String
  2.          Open "C:\zipTest\data.txt" For Input As 1
  3.                 Line Input #1, strVlez    ' prv red
  4.                MsgBox strVlez
  5.                 Line Input #1, strVlez    ' vtor red
  6.                MsgBox strVlez
  7.        
  8.             Close 1

carobnjak 26.06.2015 09:09
Predmet:Re: Import iz txt

E ovo i mene interesuje, pratim ovo Grinning nisam uspio jos probati ali za vikend valjda uspijem nesto

Avko 27.06.2015 11:39
Predmet:Re: Import iz txt

moras isto tako koristiti
userform1.txtSifra.Text=Left(strData,pocetak-1)
ovo userform1. ti je bitno. kazes da treba biti u textbox na formi prikazano
ili u nekom drugom objektu na formi. mozes prikazati i u listbox-u a onda isto moras staviti prije objekta imeforme tj userform1.
najbolje prikazi formu kako izgleda stavi skrin kepcur pa cemo ici dalje korak po korak

zxz 27.06.2015 13:56
Predmet:Upis i citanje iz ini Fajla

Evo ti kod za ini fajl.
Ovaj kod kopiraj u neki modul.
PreuzmiIzvorni kôd (Visual Basic):
  1. Option Compare Database
  2. Option Explicit
  3. 'deklaracija API funkcijaza ini file
  4. Private Declare Function GetPrivateProfileString Lib "kernel32" Alias "GetPrivateProfileStringA" (ByVal lpApplicationName As String, ByVal lpKeyName As String, ByVal lpDefault As String, ByVal lpReturnedString As String, ByVal nSize As Long, ByVal lpFileName As String) As Long
  5. Private Declare Function GetPrivateProfileInt Lib "kernel32" Alias "GetPrivateProfileIntA" (ByVal lpApplicationName As String, ByVal lpKeyName As String, ByVal nDefault As Long, ByVal lpFileName As String) As Long
  6. Private Declare Function WritePrivateProfileString Lib "kernel32" Alias "WritePrivateProfileStringA" (ByVal lpApplicationName As String, ByVal lpKeyName As String, ByVal lpString As String, ByVal lpFileName As String) As Long
  7.  
  8. 'Ucitavanje
  9. Function GetINI(ByVal AppS As String, ByVal Kljuc As String) As String
  10. Dim BafS As String * 256
  11. Dim BafL As Long
  12. BafL = GetPrivateProfileString(AppS, Kljuc, "", BafS, Len(BafS), Db_Putanja() & "\INIFile.ini")
  13. GetINI = Left$(BafS, BafL)
  14. End Function
  15.  
  16. 'Upis
  17. Function WriteINI(ByVal AppS As String, ByVal Kljuc As String, ByVal Vrijednost As String) As String
  18. WritePrivateProfileString AppS, Kljuc, Vrijednost, Db_Putanja() & "\INIFile.ini"
  19. End Function
  20.  
  21. 'Proba
  22. Function UcitajSve()
  23. Dim a As String
  24. 'Ucitavanje
  25. a = GetINI("Grupa2", "Podatak1")
  26. 'Zapis
  27. MsgBox a
  28. WriteINI "Neka Grupa", "Podatak grupe", "33"
  29. End Function
  30.  
  31. Function Db_Putanja() As String
  32.  '-------------------------------------------------
  33. 'Ova funkcija pronalazi putanju postojee baze
  34. 'Autor funkcije ZXZ
  35. '__________________________________________________
  36.    Dim DB As Database
  37.     Dim Putanja As String
  38.    
  39.     On Error Resume Next                                     'Ako naieÅ¡ na greÅ¡ku nastavi
  40.    Set DB = DBEngine(0)(0)                                  'Setovanje baze
  41.    Putanja = DB.Name                                          'Upis putanje baze i njenog imena
  42.    Do Until Right$(Putanja, 1) = "\"                         'Petlja za odvajanje imena baze od putanje baze
  43.        Putanja = Left$(Putanja, Len(Putanja) - 1)
  44.     Loop
  45.     Putanja = Left$(Putanja, Len(Putanja) - 1)
  46.     Db_Putanja = Putanja
  47.     Set DB = Nothing
  48. End Function

Evo podaci za ini fajle.
Otvori notepad te kopiraj u njega ovo ispod i zapisi u isti dir gdje ti je tvoja access baza pod imenom IniFile.ini.
Sadrzaj ini fajla:
[grupa1]
Podatak1=Vrijednost1
Podatak2=Vrijednost2
Podatak3=Vrijednost3
Podatak4=Vrijednost4
[grupa2]
Podatak1=Vrijednost1
Podatak2=Vrijednost2
Podatak3=Vrijednost3
[Podaci]
Baza_be=C:\podaci\baza_be.mdb

kenan 26.06.2015 12:24
Predmet:Re: Import iz txt

Hvala Avko

ali moja ideja je da iz txt ili ini povlačim podatke direktno u polja u formi probao sam na ovaj način kako si mi ti poslao ali mi javlja greÅ¡ku

da nemaš neki gotov primjer

Avko 26.06.2015 14:06
Predmet:Re: Import iz txt

Citiraj kenan:
Hvala Avko

ali moja ideja je da iz txt ili ini povlačim podatke direktno u polja u formi probao sam na ovaj način kako si mi ti poslao ali mi javlja greÅ¡ku
da nemaš neki gotov primjer

1. koju gresku?
2. na formi mozes imati text box ili label. Pa prema tome im dajes ime. Za sifru ime textBoxa das ime txtSifra i onda umjesto u varijablu iz moga primjera sifra=Left(strData,pocetak-1) stavis txtSifra.text=Left(strData,pocetak-1)
ako si stavio option Explicit na pocetku javice ti gresku jer nisi odredio neke varijable, tj ja nisam stavio u kod. sifra, grupa, korisnik
dim sifra as integer
dim grupa as string
dim korisnik as string ili jednostavnije

dim sifra
dim grupa
dim korisnik
pa ce se automatski odrediti za sve tri variant sto zauzuima malo vise mjesta al ko te pita, ima se moze se

Avko 26.06.2015 11:17
Predmet:Re: Import iz txt

[sifra] -- naprimjer broj 1 ide u polje 1
[grupa]     -- naprimjer broj 1 ide u polje 1
[korisnik] -- naprimjer broj 1 ide u polje 1

meni ovo nije uopce jasno. Ocekivao sam da sifra ide u polje 1, grupa u polje 2 i korisnik u polje 3
ako bi ih razdvojili zarezom (,) imali bi razgraniceni teks fajl. Zapravo imamo dvije vrste tekstualnih fajlova: fiksne sirine i fajlove razgranicene sirine. Razgraniciti ih mozemo nekim znakom a najcesce se koristi zarez (,). CSV fajl.
Imamo tri metode za pristup podacima.
direktna, ukoliko su svi zapisi u datoteci jednake dužine (veličine).
sekvencijalna (slijedna): pojedini zapisi u datoteci različitih su duljina, pa da bi se doÅ¡lo do n-tog zapisa, potrebno je pročitati svih n-1 zapisa prije njega.
binarni pristup, za binarni pristup potrebno je tocno znati kako su podaci uredeni , da bi se vratili ispravno. Binarni podaci se cesto spremaju u privatnom formatu (MDB) sto otezava njihovo otvaranje i citanje.

metod sekvencijalnog pristupa najpogodniji je za txt fajlove.
vb u txt fajlu cita samo jednu liniju podataka i rasclanjiva je u njena polja.
sintaksa za citanje txt fajlova u sekvencijalnom modu:

open imeFajla for mode as [#]brojFajla [Len=BufferSize]

imeFajla-putanja do txt fajla
mode-output,append,binary ili random
buffersize-broj bajtova koje cita vb pri svakom pristupu fajlu (ovo se izostavlja)

mode:
input-samo citanje, bez unosa
output-suprotno inputu
append-fajl postoji i samo se dodaju podaci u fajl bez citanja
binary-specijalni karakteri (prelaz u novi red) se nevide jer ih vb tretira kao svaki drugi bajt
random-otvaranje svih fajlova

kod za otvaranje razgranicenog txt fajla i citanja linije podataka:
funkcija InStr() locira zarez u string promijenjivoj strData.

PreuzmiIzvorni kôd (Visual Basic):
  1. sub procitaj()
  2. dim strData as string
  3. dim FF as integer
  4. dim pocetak as integer
  5. dim kraj as integer
  6. FF=FreeFile()
  7. open App.Path & "\ImeFajla.txt" For INPUT As #FF
  8. Line INPUT #FF,strData
  9. Close "FF
  10.  
  11. pocetak=Instr(1,strData,",")
  12. kraj=Instr(pocetak+1,strData,",")
  13. sifra=Left(strData,pocetak-1)
  14. grupa=Mid(strData,pocetak+1,kraj-pocetak-1)
  15. pocetak=Instr(kraj,strData,",")
  16. kraj=Instr(pocetak+1,strData,","
  17. korisnik=Mid(strData,pocetak+1,kraj-pocetak-1)
  18. end sub

ja bi podatke u txt fajlu uredio na nacin:
sifra,korisnik,grupa
i citao ih uz pomoc gore navedenog koda
mozda je staromodan nacin ali bi ja tako to napravio

kenan 25.06.2015 13:51
Predmet:Import iz txt

znali neko kako importovati iz txt fajla u polje u formi dio teksta odnosno jedan red

ovo bi bio primjer otprilike

razlog zaÅ¡to sam ih razdvojio da bih kod importa mogao odabirat koje podatke da povučem

unaprijed hvala
Prilozi:
Import file.txt (Velicina datoteke:148 Bajt)

zxz 25.06.2015 14:09
Predmet:Re: Import iz txt

Hoces reci da u accessovoj tabeli hoces da imas samo jedno polje i da u njega ucitas iz txt polja podatke ali samo one koji nisu u zagradama.
Zakaci malo i prginalgog txt.
Onako kako tacno izgleda.

zxz 29.06.2015 21:53
Predmet:Re: Import iz txt

Sta bi sa ovim?
Ovo je kod za ini fajlove.
Jeli makar ko drugi probao?