Binßrnφ soubory - °et∞zce r∙znΘ dΘlky

UrΦit∞ Vßm neuniklo, ₧e p°edchozφ k≤d mß jednu znaΦnou nev²hodu - musφte znßt dΘlku °et∞zce, co₧ zase tak Φasto neb²vß. Proto₧e, jak jsem si ji₧ ukßzali d°φve, Φφslo m∙₧e mφt jakoukoliv dΘlku, pak si nejprve ulo₧φme dΘlku °et∞zce a teprve potom °et∞zec:

Dim nFileNum As Integer
Dim nLen As Integer, sString As String
nFileNum = FreeFile
Open App.Path & "\example.bin" For Binary Access _
   Write Lock Read Write As #nFileNum
'Naplnφme prom∞nnou
sString = "P°φklad binßrnφch text∙"
'zjistφme jejφ dΘlku
nLen = Len(sString)
'a oboje zapφÜeme
Put #nFileNum, , nLen
Put #nFileNum, , sString
Close #nFileNum

P°i Φtenφ si nejprve zjistφme dΘlku a potom naΦteme °et∞zec:

Dim nFileNum As Integer
Dim nLen As Integer, sString As String
nFileNum = FreeFile
Open App.Path & "\example.bin" For Binary Access _
   Read Lock Read Write As #nFileNum
'NaΦtenφ dΘlky
Get #nFileNum, , nLen
'Inicializace prom∞nnΘ se sprßvn²m poΦtem mezer
sString = Space$(nLen)
Get #nFileNum, , sString
Close #nFileNum
Msgbox sString

Pokud jste si dob°e vÜimli, tak nespecifikujeme pozici, odkud se mß zaΦφt psßt nebo Φφst. Je to proto, ₧e dΘlka °et∞zce m∙₧e b²t r∙zn∞ dlouhß. Mφsto toho nechßme parametr prßzdn² a VB se automaticky p°esune na dalÜφ Φßst dat kdykoliv zavolßme p°φkaz Get. Musφme ale v₧dy zapisovat a Φφst data ve stejnΘm po°adφ. Pokud se budete chtφt pokouÜet naΦφst prom∞nnou, kterß byla zapsßna jakou poslednφ prvnφ, jste v troub∞.

Zp∞t DalÜφ

Autor: The Bozena