Файлдық жүйе vb6 тізімі ретінде. Файлға деректерді қосу

Windows

Жұмыс мақсаты: Файлдармен жұмыс істеу үшін VB 6 тіл операторларын үйрену және пайдалану әртүрлі түрлері: ретті (мәтіндік) файлдар, кездейсоқ қатынау файлдары, екілік файлдар. Құралды зерттеу және пайдалану ЖалпыДиалогфайлдарды ашу және сақтау, қаріптер мен түстерді таңдау және нысанды пайдалану алмасу буферіқарапайым мәтіндік редакторды құру мысалын қолдана отырып, мәтін фрагменттерін сақтауға арналған.

Бақылау сұрақтары:

1. Мәтіндік файлды ашудың қандай тәсілдері бар? Мәтінді және басқаларды қалай жабуға болады файлды ашыңыз?

2. Жазылатын мәтіндік файлға мәліметтер қалай жазылады? Write және Print операторларының айырмашылығы неде?

3. Мәліметтер оқу үшін ашық күйден қалай оқылады мәтіндік файл? Input және Line Input операторларының айырмашылығы неде? Файлдан берілген символдар санын қандай функция арқылы оқуға болады? Файлдың барлық символдарын қалай оқуға болады?

4. Бұл не реттелетін түрідеректер және бұл концепция кездейсоқ қол жеткізу файлдарымен жұмыс істеу кезінде қалай пайдаланылады ( раф)?

5. Файлдан қандай операторлармен рафжазбалар оқылады және файлға енгізіледі рафжаңа жазбалар жазылады ма?

6. Индекс қандай мақсатта анықталады және файлмен жұмыс істегенде қолданылады раф?

7. Екілік файлдарды қолданудың қандай мүмкіндіктері бар? Олар қалай ашылады? Екілік файлдан оқу және екілік файлға жазу қалай орындалады?

8. Басқаруды қалай қолдануға болады ЖалпыДиалогмәтіндік файлдың мазмұнын мәтіндік өріске жүктеу керек пе? Мәтіндік файлда өңделген мәтінді сақтау үшін бірдей басқару элементін қалай пайдалануға болады?

9. Басқару элементін қалай қолдануға болады ЖалпыДиалогфайл мазмұнын жүктеп алу үшін rtfалаңда Баймәтін ұясы? Өңделген мәтінді файлға сақтау үшін бірдей басқару элементін пайдалану жолы rtf?

10. Басқару элементін қалай қолдануға болады ЖалпыДиалогқаріп параметрлерінің мәндерін өзгерту және терезедегі мәтін түсін өзгерту мәтін ұясы(немесе терезедегі таңдалған мәтін бөлігі Баймәтін ұясы)?

7.1-мысал. «Қызметкер мәліметтеріне» жазуды (және мәтіндік файлдан оқуды) көрсететін қолданбаны қарастырыңыз — әрқайсысында қызметкердің сәйкестендіру нөмірі, толық аты-жөні, туған күні және туған жері бар жолдар. Жолдар кестені құрайды экран пішіні 4 Combo Box басқару элементін имитациялайды (7.1-сурет), Стиль сипаты 1 - SimpleCombo мәніне орнатылған Comb(i) нысандарының массивін қалыптастырады.

Жойылатын жолды бөлектеңіз», vbExclamation

Comb(j).RemoveElement i

'Кірістіру жаңа рекордүстелге:

Жеке қосалқы mnuInsert_Click()

i% = Тарақ(0).ТізімИндекс

Егер мен< 0 Then

MsgBox «Оның алдында кірістірілетін жолды таңдаңыз», vbExclamation

Comb(0).AddItem InputBox("Нөмірді енгізіңіз"), i

Тарақ(1).AddItem InputBox("Атын енгізіңіз"), i

Comb(2).AddItem InputBox("Туған күнін енгізіңіз."), i

Comb(3).AddItem InputBox("Туған жерді енгізіңіз."), i

«Кестедегі жазбаны өзгерту:

Жеке қосалқы mnuUpdate_Click()

i% = Тарақ(0).ТізімИндекс

Егер мен< 0 Then

MsgBox "Өзгертілетін жолды таңдау", vbExclamation

Тарақ(0).Тізім(i) = InputBox("Нөмірді енгізіңіз", Тарақ(0).Тізім(i))

Тарақ(1).Тізім(i) = InputBox("Атын енгізіңіз", Тарақ(1).Тізім(i))

Comb(2).List(i) = InputBox("Туған күнін енгізіңіз", Comb(2).List(i))

Comb(3).List(i) = InputBox("Туған жерді енгізіңіз", Comb(3).List(i))

‘ Бүкіл кестені тазалау:

Жеке қосалқы mnuClear_Click()

‘ Мәтіндік файлдағы мәліметтермен кестені толтыру:

Жеке қосалқы mnuLoad_Click()

№1 енгізу үшін "person.txt" файлын ашыңыз

№1 енгізу, numb, fio, bdate, block

Тарақ(0).Элементті қосу

Тарақ(1).Element fio қосу

Тарақ(2).Element bdate қосу

Comb(3).AddItem блогы

‘ Мәтіндік файлға кесте мәліметтерін жазу:

Жеке қосалқы mnuSave_Click()

N% = Тарақ(0).ТізімСаны

№1 шығару үшін "person.txt" файлын ашыңыз

i = 0 үшін N - 1

numb = Val(Comb(0).List(i))

fio = Тарақ(1).Тізім(i)

bdate = CDate(Comb(2).List(i))

блок = Тарақ(3).Тізім(i)

#1, numb, fio, bdate, bloc деп жазыңыз

‘ Қолданбаны өшіру:

Жеке қосалқы mnuExit_Click()

7.2-мысал . Басқару элементтерін пайдалануды көрсететін қолданбаны қарастырыңыз ЖалпыДиалогфайлды ашуға және сақтауға, қаріп пен түсті таңдауға және мәтінді өңдеуге арналған.

Файлды пішімдеу жазумәтіндік өріске (7.2-суреттегі сол жақ өріс) және пішім файлына жүктеледі RTF- алаңда Баймәтін ұясы(7.2-суреттегі оң жақ шет).

объект

Сынып

объект

Меншік

объект

Меншік құны

«Жалпы панельдер

диалог»

Ашу/Басқаша сақтау қойындысы

Қаріп қойындысы

Түс қойындысы

Кесте мәзір командаларының қасиеттерін көрсетпейді Қаріп, түсЖәне Өңдеу. Төменде тек мәзір командалары үшін процедура коды берілген Файл (ашық, СақтауЖәне Сақтауретінде). Менюдің басқа командалары үшін кодты құрастыру – осы жұмыстың 2-ші тапсырмасының тақырыбы.

Жеке қосалқы mnuOpen_Click()

CommonDialog1.ShowOpen

F$ = CommonDialog1.FileName

Оң болса(F, 3) = "rtf" Содан кейін

RichTextBox1.LoadFile F

ElseIf Right(F, 3) = "txt" Содан кейін

№1 енгізу үшін F ашыңыз

S$ = Кіріс(N, 1)

Жеке қосалқы mnuSave_Click()

CommonDialog1.ShowSave

F$ = CommonDialog1.FileName

Жеке қосалқы mnuSaveAs_Click()

CommonDialog1.ShowSave

F$ = CommonDialog1.FileName

RichTextBox1.SaveFile F, rtfRTF

Бұл жұмыс барысында студент 2 тапсырманы орындауы керек.

1-жаттығу. Тапсырманы орындау барысында студенттер VB 6-да қол жетімді кездейсоқ файлдармен жұмыс істеу мүмкіндіктерін игереді ( RAF-кездейсоққол жеткізуфайл).

Берілген дерекқор кестесі үшін пайдаланушы анықтайтын деректер түрі жарияланады, осы түрдегі айнымалы жарияланады (оқулық, 108 - 112 беттер), пайдаланушы анықтайтын түрдің айнымалы мәнін пайдаланатын процедуралар құрастырылады және жөндеуден өтеді.

Атап айтқанда, мәзір командаларының процедуралары жүзеге асырылады. Файлға жазыңызRAFЖәне Файлдан оқуRAF. 7.1 мысалындағыдай, деректерді өңдеу үшін нысандар жиымы пайдаланылады. КомбоҚорапжәне мәзір Өңдеубес ішкі мәзір командасымен: жазба қосу, Жазбаны жою, Жазбаны енгізу, Жазбаны өңдеу, Кестені тазалау.

1 нұсқа.

«Автосервис» деректер қорының «Автомобиль» кестесіне (7.1-кесте) пайдаланушы деректер түрін жариялаңыз.

машина

машина

ақаулар

7.1-кестенің төменгі жолында өрістердің түрлері көрсетілген.

2-нұсқа.

Car Service дерекқорының Ақаулар кестесі (7.2-кесте) үшін реттелетін деректер түрін жариялаңыз.

ақаулар

Аты

ақаулар

Бағасы

7.2 кестенің төменгі жолында өрістердің түрлері көрсетілген.

Үлгі ретінде 7.1 қолданбасын пайдаланып, ұсынылған кесте үшін деректерді енгізуді және өңдеуді ұйымдастырыңыз, бұл деректерді кездейсоқ қатынас файлына жазыңыз және кездейсоқ қол жеткізу файлынан деректерді оқыңыз. 7.1-мысалдағыдай, бұл әрекеттер суретте көрсетілген мәзір командаларының жұмысы ретінде орындалады. 7.1.

2-тапсырма. Әрекеттің бөлігі ретінде студенттер қолданбаны қарапайым мәтіндік редактор ретінде қарастыруға мүмкіндік беретін 2-қосымшаға жаңа мүмкіндіктерді қосады.

1 нұсқа ЖалпыДиалогмәзір командаларын орындау ҚаріпЖәне түс(ішкі мәзірмен Кейіпкер түсіЖәне Фон түсі). Осы командалардың көмегімен терезеде таңдалған мәтін фрагменті үшін қаріпті (оның аты, стилі және өлшемі) таңдау қамтамасыз етілуі керек. Баймәтін ұясы, сонымен қатар таңдалған фрагменттің таңбаларының түсін таңдау және осы бүкіл терезенің өң түсін таңдау.

Ескерту:Объектіні орнату кезінде ЖалпыДиалог(Пайдаланушы) сипатын пайдаланып қаріп таңдау үшін Flags сипатының мәнін 1, 2 немесе 3 мәніне орнатуды ұмытпаңыз (нұсқаулықты қараңыз, 183-б.).

2-нұсқа. Басқаруды пайдалану ЖалпыДиалогмәзір командаларын орындау Өңдеу(ішкі мәзір Көшіру, КесуЖәне қою), мақсаты кім көшірунемесе жоютаңдалған мәтін фрагментінің алмасу буферіне, сонымен қатар кірістіруалмасу буферінің мазмұн мәтінінің таңдалған орнына.

Ескерту:Алмасу буферіне (нысан алмасу буфері) SetText және GetText әдістерін қолдануға болады:

алмасу буфері. SetText RichTextBox1.SelText

RichTextBox1.SelText = алмасу буфері. gettext

Әрбір бағдарлама деректерді дискіге сақтап, оны дискіден оқуы керек. Бұл, мысалы, бағдарлама параметрлерін сақтау үшін қажет, пайдаланушыға бағдарламаны ұнатуы екіталай, оны келесі жолы іске қосқан кезде қайта конфигурациялауға тура келеді.

Бұл мақалада сөйлесеміз Visual Basic көмегімен мәтіндік файлдармен жұмыс істеу туралы.

Файл дескрипторы

Файлдармен жұмыс істеу үшін операциялық жүйеенгізу/шығару арналарын пайдаланады, яғни. әрбір ашық файлдың өз нөмірі болады.

Visual Basic-те функция бар тегін файл, ол файлмен жұмыс істеу үшін пайдалануға болатын бос арнаның нөмірін қайтарады. Егер бос арналар болмаса, қате пайда болады.

Тегін файл[(Ауқым саны) ]

Ауқым саны- бос арналар ауқымын анықтауға мүмкіндік беретін қосымша параметр, егер Ауқым саны= 0 (әдепкі), содан кейін арна нөмірі 1 - 255 ауқымынан, ал 1 болса, 256 - 511 ауқымынан қайтарылады.

MyFile = FreeFile " MyFile айнымалысына тегін арна тағайындалды және оны енді файлдармен жұмыс істеу үшін пайдалануға болады

Мәтіндік файлдармен жұмыс

Көбінесе мәтіндік файлдармен кездесу қажет. Мәтіндік файлдар ASCII (American Standard Code for Information Interchange) таңбалар жиынынан тұрады.

Деректерді жазуды/оқуды бастамас бұрын файлды ашу керек, бұл оператордың көмегімен жасалады ашық(Файл атауы) # үшінфайл_нөмірі, Мұнда:

Енгізу- файлды оқу үшін ашу, егер файл жоқ болса, онда қате пайда болады;

Шығару- жазу үшін, егер файл жоқ болса, ол жасалады, ал файл бар болса, оның үстіне жазылады;

Қосымша- қосу үшін, егер файл жоқ болса, ол жасалады, ал егер файл бар болса, онда деректер файлдың соңына қосылады.

Мәтіндік файлдарды оқу екі жолмен орындалуы мүмкін: таңба бойынша таңба оқу, функцияны пайдалану енгізу(Оқылған_таңбалар_саны, #файл_нөмірі) және сызық бойынша, бұл үшін функция пайдаланылады Жолды енгізу#файл_нөмірі, Қайда_оқу керек.

DimMyFile

Dim S String «Оқылған деректерді сақтауға арналған айнымалы

MyFile = FreeFile

#МеніңФайл ретінде енгізу үшін ашыңыз("C:\TEST.txt").

Жолды енгізу #МеніңФайлым, S «TEST.TXT файлынан S айнымалысына бірінші жолды оқыңыз

DimMyFile «Тегін файл үшін айнымалыны жариялаңыз

Күңгірт i бүтін сан ретінде «Цикл үшін айнымалы

Dim tS String ретінде «Жолдарды оқуға арналған айнымалы

Dim S String «Соңғы деректерді сақтауға арналған айнымалы

MyFile = FreeFile «Файлдармен жұмыс істеу үшін тегін арнаны тағайындаңыз

«Оқу үшін TEST.TXT файлын ашыңыз

i = 1-ден 5-ке дейін

Жолды енгізу #МеніңФайлым, tS «TEST.TXT файлын жол бойынша оқыңыз

Егер i => 5 болса, S = tS «Егер бесінші жол болса, оны S айнымалысында сақтаңыз

Келесі i

#МеніңФайлымды жабу "Файлды жабыңыз

Dim MyFile «Тегін файл үшін айнымалыны жариялау

Dim S As String «Оқылған деректерді сақтауға арналған айнымалы

MyFile = FreeFile «Файлдармен жұмыс істеу үшін тегін арнаны тағайындаңыз

#МеніңФайл ретінде енгізу үшін ашыңыз("C:\TEST.txt"). «Оқу үшін TEST.TXT файлын ашыңыз

S = Input$(LOG(1), 1) «Бүкіл файлды S айнымалысына оқыңыз

#МеніңФайлымды жабу "Файлды жабыңыз

Файлға жазу үшін операторлар бар. # басып шығаруфайл_нөмірі, ДеректерЖәне # жазуфайл_нөмірі, Деректер. Бұл операторлардың бір айырмашылығы сол Жазыңыздеректерді тырнақшаға жазады, және басып шығарутырнақшасыз.

Келесі код C:\ дискісінде жаңа TEST.TXT файлын жасайды және оған екі жолды жазады, біріншісі тырнақшасыз, екіншісі тырнақшасыз:

DimMyFile «Тегін файл үшін айнымалыны жариялаңыз

MyFile = FreeFile «Файлдармен жұмыс істеу үшін тегін арнаны тағайындаңыз

#МеніңФайл ретінде шығару үшін ашыңыз("C:\TEST.txt"). «Жазу үшін TEST.TXT файлын ашыңыз

Print #MyFile, "Бұл жол Print операторы арқылы жазылған, ол тырнақшасыз..."

#MyFile деп жазыңыз, "Бұл жол Write операторы арқылы жазылған, ол тырнақшаға алынған..."

#МеніңФайлымды жабу "Файлды жабыңыз

Бұл шын мәнінде бәрі. Сіз түсінген боларсыз, файлды жабу үшін пайдаланылатын оператор Жабық#файл_нөмірі, Сонымен бірге, # файл_нөмірінақтылау талап етілмейді.

Мақала сәл шикі, бірақ ол жаңадан келген бағдарламашыларға пайдалы болады. Келесі жолы мен екілік файлдармен жұмыс істеу туралы айтатын боламын.

8. АҚПАРАТТЫ САҚТАУ ЖӘНЕ ОҚУ

Бағдарлама аяқталғаннан кейін жадта жасалған барлық деректер жоғалып кетпеуі үшін ақпаратты қатты дискіге сақтай білу керек. Әйтпесе, барлық ақпарат із-түзсіз жоғалады. Деректерді әртүрлі тәсілдермен сақтауға және оқуға болады. Екілік және мәтіндік файлдар әртүрлі көлемдегі және форматтағы ақпаратпен жұмыс істеу үшін пайдаланылуы мүмкін. Ақпараттың шағын көлемін сақтау үшін Windows тізілімін пайдалануға болады. Ал ең күрделі тапсырмалар үшін деректер қорын пайдалану орынды.

8.1. Файлдарды «Ашу »

Файл дегеніміз – кез келген сыртқы жадының аталған аймағы. Деректер компьютер жадында, ал файлдар қатты дискіде «өмір сүреді». Бағдарлама файлдармен тікелей жұмыс істемейді, бірақ операциялық жүйені делдал ретінде пайдаланады.

Файл атауларының екі түрі бар: толық – файл атауынан басқа файлдың сыртқы медиадағы орны да көрсетіледі (мысалы, “C:\Program Files\Microsoft Visual Studio\VB98\VB 6.EXE”) және қысқаша – тек файл атауы (VB 6.EXE). Егер файлдың орны көрсетілмесе, ол ағымдағы қалтада ізделеді, әдепкі бойынша - қолданбаңыз орналасқан қалта. Тікелей файл атауы екі бөліктен тұрады: нақты бірегей файл атауы және оның кеңейтімі. Атаудың өзі файлды анықтайды, ал кеңейтім әдетте файл пішімін немесе оның қандай бағдарламамен жасалғанын көрсетеді.

Файлмен жұмысты бастамас бұрын операциялық жүйеден сұрау керек көрсеткіш (дескриптор) файл. Оны алу үшін «Тегін файлды» пайдаланыңыз. Содан кейін «Ашу» операторын пайдаланып, бұл көрсеткіш қажетті файлмен байланыстырылады. Осыдан кейін ғана бағдарлама онымен жұмыс істей алады. Файлды ашу синтаксисі келесідей:

‘ тегін файл көрсеткішін алыңыз және оны айнымалыға тағайындаңыз

FileHandle% = FreeFile

' файлды ашыңыз

FilePath_ ашу

[#]FileHandle% ретінде

...(файлмен жұмыс)

[#]FileHandle қолданбасын жабу

· FileHandle % — файл көрсеткішін сақтайтын айнымалы;

· FreeFile — файл көрсеткішін қайтаратын функцияның аты;

· Open – оператор атауы;

· FilePath – файлдың толық аты;

· For - файлға қол жеткізу режимінің сипаттамасынан кейінгі кілт сөз;

· Режим – файлға қол жеткізу режимі (15 кестені қараңыз);

15-кесте

Файлға кіру режимдері

Кіру режимдері

Сипаттама

Қосымша

Бар мәтіндік файлдың соңына деректерді қосу. Егер файл жоқ болса, ол жасалады

Екілік

Файлды екілік режимде ашу, яғни. байттар жиыны ретінде. Егер файл жоқ болса, бірақ жасалады

Енгізу

Мәтіндік форматта оқу үшін файлды ашу

Шығару

Мәтіндік файлды жазу үшін файлды ашу. Бұл жағдайда барлық ескі ақпарат жойылады. Егер файл жоқ болса, бірақ жасалады

Кездейсоқ

Кездейсоқ қол жеткізу режимінде файлды ашу. Бұл режим қарапайым жазбалармен жұмыс істеу үшін қолданылады. Егер файл жоқ болса, бірақ жасалады

· Access – қол жеткізу түрінің сипаттамасынан кейін қосымша кілт сөз;

· AccessType – қол жеткізу түрінің сипаттамасы:

· Оқу - оқу;

· Жазу - жазу;

· Оқу Жазу – оқу және жазу.

Ескерту

«Қосу» және «Шығару» қатынасы режимдері тек жазу рұқсатына, тек енгізуге ғана оқуға рұқсатқа және барлық үш қатынас түріне екілік және кездейсоқ рұқсат береді.

· LockType — бағдарламаңыз онымен жұмыс істеп тұрған кезде бұл файлды басқа бағдарламалар пайдалана алатынын анықтайтын қосымша параметр. Әдетте ол желімен байланысты (16 кестені қараңыз).

16-кесте

LockType параметрі үшін мүмкін мәндер

Мағынасы

Сипаттама

бөлісті

Қажетті құқықтары бар барлық пайдаланушылар файлға толық қол жеткізе алады

оқуды құлыптау

Файлды оқуға тыйым салынған, бірақ жазуға рұқсат етілген

Жазуды құлыптау

Файлға жазу бұғатталған, бірақ оқуға рұқсат етілген

Оқуды жазуды құлыптау

Оған оқуға да, жазуға да тыйым салынады.

· As - файл көрсеткішінен кейін кілт сөз.

· # — өзінен кейінгі мән файл көрсеткіші екенін көрсететін таңба.

· Len - қосымша кілт сөз, одан кейін жазбаның ұзындығын көрсететін параметр болуы керек.

· CharInBuffer % - кездейсоқ қатынас режимінде ашылған файл үшін жазба ұзындығы (Random ).

· Жабу - көрсетілген дескриптормен байланыстырылған файлды жабатын оператор.

Файлмен жұмысты аяқтағаннан кейін оны жабу маңызды. «Жабу» операторы файл көрсеткішін және онымен байланысты жад аймағын босатады.

Файлмен жұмыс істегенде, дәлірек айтқанда, одан оқу кезінде файлдың соңын анықтау өте маңызды. Оны EOF (Файлдың соңы) функциясы арқылы анықтауға болады:

EOF(FileHandle)

· EOF – функция атауы;

· FileHandle - соңы анықталатын файл дескрипторы.

Функция файлдың соңына жеткен болса, True (шын) мәнін қайтарады, әйтпесе ол False (False) мәнін қайтарады.

8.2. Мәтіндік файлды оқу және жазу

Мәтіндік файл «Енгізу», «Шығару» немесе «Қосымша» кіру режимінде ашылады (15-кестені қараңыз). Бұл режимнің ерекшелігі - ол тек арнайы басып шығарылатын таңбалармен жұмыс істейді. Қызметтік белгілермен жұмыс істеу пайдасыз.

Ақпаратты жазу үшін «Басып шығару» және «Жазу» екі операторы қолданылады, олардың синтаксисі келесідей:

Басып шығару #FileHandle%, VarBuffer[;]

#FileHandle%, VarBuffer[;] жазу

· Print /Write - оператор түйінді сөздері.

· #FileHandle % - ақпарат орналастырылатын файл көрсеткіші.

· VarBuffer - файлға жазылатын мән.

· ; – мәтіндік файлға жазу кезінде қолданылатын қосымша параметр келесі мәннің сол жолға, ал егер ол жоқ болса, келесіге жазылатынын білдіреді.

Файлдан ақпаратты оқу үшін «Input» және «Line Input» операторлары қолданылады. Синтаксис бір-біріне ұқсас:

Жолды енгізу #FileHandle%, VarBuffer

#FileHandle%, VarBuffer енгізіңіз

· Line Input / Input – оператор түйінді сөздері.

· #FileHandle % - ақпарат оқылатын файл көрсеткіші.

· VarBuffer - ақпарат оқылатын айнымалы.

Line Input және Input операторларының айырмашылығы біріншісі тек мәтіндік файлдарға арналған, ал екіншісі кез келгеніне арналған. Мәтіндік файлдар жағдайында, «Енгізу»Бір жолдағы деректерді бірінші бөлгішке дейін оқиды (мәтіндік деректер үшін бөлгіш «,» (үтір), ал сандық деректер үшін бұл «» (бос орын) және «,»), ал Жолды енгізу»Ешқандай бөлгіштерді елемей, бүкіл жолды бірден оқиды.

Ескерту

Visual Basic бұрын жасалған файлдардың пішімін басқара алмайды. Сондықтан «2» таңбасын сәйкес сан ретінде және керісінше оқуға болады.

8.3. Екілік файлдармен жұмыс

Файлдар ашылады екілік пішім«Ашық» операторы « Екілік» режимінде. Бұл режимнің айрықша ерекшелігі - файлмен жұмыс тек нақты байттарға бағытталған. Visual Basic файлдың қажетті орнына тікелей хабарласа алатындықтан, бұл режим − деп те аталады тікелей қол жеткізу режимі. Бұл режимнің тағы бір ерекшелігі - файлдың әртүрлі бөліктеріне ақпаратты қайта ашпай бір уақытта жазу және оқу мүмкіндігі. Екілік режимде ашылған файлға жазу келесі синтаксис арқылы жүзеге асырылады:

#FileHandle%, , NameVar қойыңыз

· Put – ақпаратты жазу операторының аты.

· RecNumber – ақпарат жазылатын файлдың байт нөмірі (қосымша параметр).

· NameVar - мазмұны файлға жазылатын айнымалы.

Екілік режимде файлдан ақпаратты оқу келесі оператор арқылы орындалады:

#FileHandle%, , NameVar алыңыз

· Get – ақпаратты жазу операторының аты.

· FileHandle % - файл көрсеткіші.

· RecNumber – ақпарат оқылатын файлдың байт нөмірі (міндетті емес).

· NameVar - оқылатын ақпарат орналастырылатын айнымалының аты.

Екілік режим ақпарат байттарына бағытталғандықтан, файлдан оқу кезінде буферлік айнымалы мәннің қатаң анықталған түрі болуы керек: не «Байт», содан кейін байттың сандық мәні оқылады, немесе бір таңбаның тұрақты ұзындығының символы, содан кейін байт таңба ретінде оқылады, ANSI, коды байт өлшеміне сәйкес келеді. Бұл таңба тіпті мәтіндік файлдар жағдайында қол жеткізу мүмкін емес басқару таңбасы болуы мүмкін.

Ескерту

Егер «RecNumber» параметрі жоқ болса, ақпарат олар бұрын жұмыс істегеннен кейін файлдың келесі байтында жазылады немесе оқылады.

8.4. Графикалық манипуляция

Графикалық кескіндерді файлдарда сақтауға және олардан алуға болады. Растрлық немесе белгіше файлынан суретті шығарып алу және оны "PictureBox" және "Image" басқару элементтерінің "Сурет" қасиетіне тағайындау үшін келесі синтаксиспен "LoadPicture ()" функциясын пайдаланыңыз:

ImageCtrl.Picture = LoadPicture(FilePath)

· ImageCtrl — сурет терезесін басқару, кескінді басқару немесе пішін атауы;

· LoadPicture - функция атауы;

· FilePath — файлдың толық аты.

SavePicture ImageCtrl .Сурет, FilePath

· SavePicture – оператор аты;

· ImageCtrl — сурет терезесін басқару, кескінді басқару немесе пішін атауы;

· Сурет – кескінге жауапты объект қасиетінің атауы;

· FilePath - файлдың толық атауы, оның дискідегі орнын көрсетеді.

8.5. Реестрдегі деректермен жұмыс істеу

Таңба пішімі ақпаратының шағын бөліктерін сақтау үшін Windows тізілімін пайдалануға болады. Visual Basic бағдарламасына кіру үшін пайдалануға болатын төрт процедура бар. Оларды пайдалану өте оңай, бірақ бір маңызды кемшілігі бар: деректерге тек белгілі бір тізілім кілтінен қол жеткізуге болады: "MyComputer \HKEY _CURRENT _USER \Software \VB and VBA Program Settings". Басқа тізілім кілттеріне қол жеткізу үшін арнайы функцияларды пайдалану қажет « Win 32 API».

Visual Basic үшін арнайы Windows тізбе кілтінен параметр мәнін алу үшін келесі функцияны пайдаланыңыз:

MyString = GetSetting(VBKeyName, Бөлім, Кілт [,Әдепкі])

· MyString – функция қайтаратын мәнді сақтауға арналған жол;

· GetSetting – функцияның аты.

· VBKeyName - ішкі VB /VBA ішкі кілтінің аты болып табылатын жол мәні.

· Кілт – бөлімдегі параметрдің атын көрсететін жол мәні.

· Әдепкі - қате (параметр жоқ) жағдайда мәні қайтарылатын қосымша аргумент.

Windows тізілімінде мәнді сақтау үшін келесі мәлімдемені пайдаланыңыз:

SaveSetting VBKeyName, Бөлім, Кілт, MyString

· SaveSetting — оператордың аты.

· MyString - табылған мән орналастырылатын жол айнымалысы.

Белгілі бір ішкі кілттен барлық параметр мәндерін қамтитын тізілімнен массив алу үшін келесі функцияны пайдаланыңыз:

MyVariant = SetAllSettings(VBKeyName, Бөлім)

· MyVariant – функция қайтаратын «Variant» түріндегі мәндер жиымы.

· SetAllSettings — функцияның аты.

· Бөлім - белгілі бір қолданбаның бөлімін немесе ішкі бөлімін көрсететін жол мәні.

Толық параметр бөлімін жою үшін келесі синтаксисі бар операторды пайдаланыңыз:

DeleteSetting VBKeyName, Бөлім, Кілт

· DeleteSetting — оператордың аты.

Өзін-өзі тексеруге арналған қауіпсіздік сұрақтары

  1. Кейбір ақпаратты қалай ұзақ сақтауға болады?
  2. Файл дегеніміз не?
  3. Сіз қандай файл атауларын білесіз?
  4. «Ашық» операторының синтаксисін көрсетіңіз. Оның параметрлерінің мақсатын түсіндіріңіз.
  5. Бір файлға бір уақытта бірнеше қолданбалардың бірлескен қол жеткізуін қалай ұйымдастыруға болады?
  6. Файлдағы ақпараттың таусылғанын қалай анықтауға болады?
  7. Неліктен файлмен жұмыс істегеннен кейін оны жабу ұсынылады?
  8. Мәтіндік және екілік файл режимдерінің айырмашылығы неде деп ойлайсыз?
  9. Мәтіндік файл режимінде мәліметтер қалай оқылады және жазылады?
  10. Екілік файл режимінде мәліметтер қалай оқылады және жазылады?
  11. Файлдармен жұмыс істегенде «Басып шығару» және «Жазу» операторларының айырмашылығы неде?
  12. Файлдармен жұмыс істегенде «Input» және «Line Input» операторларының айырмашылығы неде?
  13. Графикалық мәліметтермен қалай жұмыс істеуге болады?
  14. Windows реестрімен жұмыс істеудің негізгі принциптері қандай?



Жоғарғы