Forum » Programiranje » VB: branje po chunkih
VB: branje po chunkih
blank3_ ::
Mislim da naslov pove skoraj vse. Torej rabil bi eno funkcijo v tem stilu:
Function ReadChunk(intPartofFile as integer) as String
Torej jaz podam st. chunka ki ga jest hocem prebrat (so veliki po 1024 bytov) in potem mi fkc. vrne prebran chunk kot string. To je vse. Upam da razumete in da ima kdo kje kako resitev.
Hvala!
Function ReadChunk(intPartofFile as integer) as String
Torej jaz podam st. chunka ki ga jest hocem prebrat (so veliki po 1024 bytov) in potem mi fkc. vrne prebran chunk kot string. To je vse. Upam da razumete in da ima kdo kje kako resitev.
Hvala!
Zelo sem zaposlen. Potreboval bi brezčasje... Vsaj za nekaj časa.
StratOS ::
mas vec tipov chunkov/headerjev, lahko mas konstantne vrednosti dolzin, lahko pa tudi ne, vsak fajl/aplikacija/header/del je oznacena z vidnimi oznakami npr (win 32 exe z MZ, Zip fajl z PK ali ZIP chunkom, wav fajli, video fajli ...
Moras malce bolj specificirati za kaj gre in kaksna je struktura teh chunkov v dolocenem tipu datoteke ( glasbene, slikovne ... ).
Potem samo naredis funkcijo, ki najde zacetek chunka (oz. prebere header values, dolzine chunkov itd ...), ostalo pa je cisto binarno kopiranje ...
Ce pa delas v DB smislu potem uporabi VB open funkcijo npr :
Open "chunk.data" For Random As #1 Len = 1024
Type Record ' Define user-defined type.
ID As Integer
Name As String * 20
End Type
Dim MyRecord As Record, Position ' Declare variables.
' Open sample file for random access.
Open "TESTFILE" For Random As #1 Len = Len(MyRecord)
' Read the sample file using the Get statement.
Position = 3 ' Define record number.
Get #1, Position, MyRecord ' Read third record.
Close #1 ' Close file.
Moras malce bolj specificirati za kaj gre in kaksna je struktura teh chunkov v dolocenem tipu datoteke ( glasbene, slikovne ... ).
Potem samo naredis funkcijo, ki najde zacetek chunka (oz. prebere header values, dolzine chunkov itd ...), ostalo pa je cisto binarno kopiranje ...
Ce pa delas v DB smislu potem uporabi VB open funkcijo npr :
Open "chunk.data" For Random As #1 Len = 1024
Type Record ' Define user-defined type.
ID As Integer
Name As String * 20
End Type
Dim MyRecord As Record, Position ' Declare variables.
' Open sample file for random access.
Open "TESTFILE" For Random As #1 Len = Len(MyRecord)
' Read the sample file using the Get statement.
Position = 3 ' Define record number.
Get #1, Position, MyRecord ' Read third record.
Close #1 ' Close file.
"Multitasking - ability to f##k up several things at once."
"It works better if you plug it in."
"The one who is digging the hole for the other to fall in is allready in it."
"It works better if you plug it in."
"The one who is digging the hole for the other to fall in is allready in it."
Zgodovina sprememb…
- spremenila: StratOS ()
blank3_ ::
Hmm... mislem de me ne razumes najbolje. Torej jez ne berem samo headerjev. Jest bi rad cist lepo binarno prebral fajl po delih oz. tisti del ki ga jest hocem.
En file ma je dolg recimo 10240 bytov. Torej je razdeljen na 10 chunkov/delov. Se pravi ce dam tej fkc. parameter part = 1 mi prebere fajl od 0 byta do 1024 byta. Ce dam Part = 2 pol mi prebere od 1024 > 2048 itd.
Torej ni vazno kaka je vsebina fajla. Samo binarno ga hocem prebrat in ga dobit vn iz fkc. kot string. Bolj jasno?
---
Len = 1024 mi pa nic ne pomaga. No mi, samo to ni ravno racionalno, ker bi potem cas branja zelo narastel proti koncu fajla.
En file ma je dolg recimo 10240 bytov. Torej je razdeljen na 10 chunkov/delov. Se pravi ce dam tej fkc. parameter part = 1 mi prebere fajl od 0 byta do 1024 byta. Ce dam Part = 2 pol mi prebere od 1024 > 2048 itd.
Torej ni vazno kaka je vsebina fajla. Samo binarno ga hocem prebrat in ga dobit vn iz fkc. kot string. Bolj jasno?
---
Len = 1024 mi pa nic ne pomaga. No mi, samo to ni ravno racionalno, ker bi potem cas branja zelo narastel proti koncu fajla.
Zelo sem zaposlen. Potreboval bi brezčasje... Vsaj za nekaj časa.
Zgodovina sprememb…
- spremenil: blank3_ ()
StratOS ::
preglej malo boljse kodo !
Tole pisem zdele na pamet, napake niso izključene :
mores se samo spremeniti, če hočeš binarno
Name As Byte * 1024
odpreš pa kot Binary len=lenb(Record)
Type Record ' Define user-defined type.
Name As String * 1024 (Ali pa spremen za binarno )
End Type
Private Function ReadChunk(ID as long) as Record
dim Rec as Record
' Open sample file for random access.
Open "TESTFILE" For Random As #1 Len = Len(MyRecord)
' Read the sample file using the Get statement.
Get #1, ID, Rec.Name ' Read ID record.
Close #1 ' Close file.
ReadChunk=Rec.Name
end function
Tole pisem zdele na pamet, napake niso izključene :
mores se samo spremeniti, če hočeš binarno
Name As Byte * 1024
odpreš pa kot Binary len=lenb(Record)
Type Record ' Define user-defined type.
Name As String * 1024 (Ali pa spremen za binarno )
End Type
Private Function ReadChunk(ID as long) as Record
dim Rec as Record
' Open sample file for random access.
Open "TESTFILE" For Random As #1 Len = Len(MyRecord)
' Read the sample file using the Get statement.
Get #1, ID, Rec.Name ' Read ID record.
Close #1 ' Close file.
ReadChunk=Rec.Name
end function
"Multitasking - ability to f##k up several things at once."
"It works better if you plug it in."
"The one who is digging the hole for the other to fall in is allready in it."
"It works better if you plug it in."
"The one who is digging the hole for the other to fall in is allready in it."
Vredno ogleda ...
Tema | Ogledi | Zadnje sporočilo | |
---|---|---|---|
Tema | Ogledi | Zadnje sporočilo | |
» | [C#] Prosim pomagajte! Potrebujem program, ki bi pobiral podatke iz ene straniOddelek: Programiranje | 2746 (2356) | David1994 |
» | kopiranje iz enega fajla v drug??Oddelek: Programiranje | 1218 (978) | Seth |
» | Fraktal - Le kakšno sporočilo vsebuje ???Oddelek: Zvok in slika | 1166 (987) | Satanized |
» | API+VBOddelek: Programiranje | 2091 (1795) | webblod |
» | Odpiranje dat.exe v VBOddelek: Programiranje | 2990 (2783) | webblod |