Centar za edukaciju-BiH



#1 25.06.2015 12:51
kenan Van mreze
Clan
Registrovan od:10.02.2011
Postovi:191


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:
Informacije o tipu datoteke za:txt  Import file.txt
Preuzimanja:399
Velicina datoteke:148 Bajt

↑  ↓

#2 25.06.2015 13:09
zxz Van mreze
Administrator
Registrovan od:03.02.2009
Postovi:10,644


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.
Podrska samo putem foruma, jer samo tako i ostali imaju koristi od toga.
↑  ↓

#3 25.06.2015 18:56
Gjoreski Van mreze
Administrator
Registrovan od:02.02.2009
Postovi:1,854


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

#4 26.06.2015 08:09
carobnjak Van mreze
Clan
Registrovan od:25.07.2011
Postovi:381


Predmet: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 Van mreze
Administrator
Registrovan od:28.05.2014
Postovi:4,812


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
zivot je moja domovina.
Ovaj post je ureden 1 puta. Posljednja izmjena 26.06.2015 10:20 od strane Avko. ↑  ↓

#6 26.06.2015 11:24
kenan Van mreze
Clan
Registrovan od:10.02.2011
Postovi:191


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

#7 26.06.2015 13:06
Avko Van mreze
Administrator
Registrovan od:28.05.2014
Postovi:4,812


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
zivot je moja domovina.
↑  ↓

#8 27.06.2015 10:39
Avko Van mreze
Administrator
Registrovan od:28.05.2014
Postovi:4,812


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
zivot je moja domovina.
↑  ↓

#9 27.06.2015 12:56
zxz Van mreze
Administrator
Registrovan od:03.02.2009
Postovi:10,644


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

Podrska samo putem foruma, jer samo tako i ostali imaju koristi od toga.
↑  ↓

#10 29.06.2015 20:53
zxz Van mreze
Administrator
Registrovan od:03.02.2009
Postovi:10,644


Predmet:Re: Import iz txt
Sta bi sa ovim?
Ovo je kod za ini fajlove.
Jeli makar ko drugi probao?
Podrska samo putem foruma, jer samo tako i ostali imaju koristi od toga.
↑  ↓

Stranice (1):1


Sva vremena su GMT +01:00. Trenutno vrijeme: 7: 05 pm.