Bosna i Hercegovina



#1 25.06.2015-12:51
kenan Offline
Clan
Registrovan/a od: 10.02.2011-15:24
Komentari: 185


Subject: 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:
Informacije o fajlu: txt  Import file.txt
Preuzimanja: 86
Veličina: 148 Byte

↑  ↓

#2 25.06.2015-13:09
zxz Offline
Administrator
Registrovan/a od: 03.02.2009-16:22
Komentari: 9,676


Subject: 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.
Pozdrav
↑  ↓

#3 25.06.2015-18:56
Gjoreski Offline
Super Moderator
Registrovan/a od: 02.02.2009-22:24
Komentari: 1,445


Subject: Re: Import iz txt
eve ti loop gi cita site redovi od pocetok do kraj:
DownloadIzvorni kod (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

DownloadIzvorni kod (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
↑  ↓

#4 26.06.2015-08:09
carobnjak Offline
Clan
Registrovan/a od: 25.07.2011-11:57
Komentari: 381


Subject: Re: Import iz txt
E ovo i mene interesuje, pratim ovo Grinning nisam uspio jos probati ali za vikend valjda uspijem nesto
Srdačan pozdrav
↑  ↓

#5 26.06.2015-10:17
Avko Offline
Administrator
Registrovan/a od: 28.05.2014-09:21
Komentari: 3,118


Subject: 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.

DownloadIzvorni kod (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
Život je moja domovina.
Ovaj komentar je mijenjan 1 puta. zadnja izmjena 26.06.2015-10:20 od strane Avko. ↑  ↓

#6 26.06.2015-11:24
kenan Offline
Clan
Registrovan/a od: 10.02.2011-15:24
Komentari: 185


Subject: 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
↑  ↓

#7 26.06.2015-13:06
Avko Offline
Administrator
Registrovan/a od: 28.05.2014-09:21
Komentari: 3,118


Subject: Re: Import iz txt
Citat od 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
Život je moja domovina.
↑  ↓

#8 27.06.2015-10:39
Avko Offline
Administrator
Registrovan/a od: 28.05.2014-09:21
Komentari: 3,118


Subject: 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
Život je moja domovina.
↑  ↓

#9 27.06.2015-12:56
zxz Offline
Administrator
Registrovan/a od: 03.02.2009-16:22
Komentari: 9,676


Subject: Upis i citanje iz ini Fajla
Evo ti kod za ini fajl.
Ovaj kod kopiraj u neki modul.
DownloadIzvorni kod (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

Pozdrav
↑  ↓

#10 29.06.2015-20:53
zxz Offline
Administrator
Registrovan/a od: 03.02.2009-16:22
Komentari: 9,676


Subject: Re: Import iz txt
Sta bi sa ovim?
Ovo je kod za ini fajlove.
Jeli makar ko drugi probao?
Pozdrav
↑  ↓

Stranice (1): 1


All times are GMT +01:00. Current time: 24.05.2018-18:49.