Failu sistēma kā saraksts vb6. Datu pievienošana failam

Windows

Darba mērķis: VB 6 valodas operatoru mācīšanās un izmantošana darbam ar failiem dažādi veidi: secīgi (teksta) faili, brīvpiekļuves faili, binārie faili. Rīka izpēte un izmantošana BiežiDialogs lai atvērtu un saglabātu failus, atlasītu fontus un krāsas un izmantotu objektu starpliktuvē teksta fragmentu glabāšanai, izmantojot vienkārša teksta redaktora izveides piemēru.

Kontroles jautājumi:

1. Kādi ir teksta faila atvēršanas veidi? Kā aizvērt tekstu un jebkuru citu atver failu?

2. Kā dati tiek ierakstīti rakstāmā teksta failā? Kāda ir atšķirība starp rakstīšanas un drukāšanas paziņojumiem?

3. Kā dati tiek nolasīti no atvērta lasīšanai teksta fails? Kāda ir atšķirība starp ievades un līnijas ievades operatoriem? Kādu funkciju var izmantot, lai no faila nolasītu noteiktu rakstzīmju skaitu? Kā nolasīt visas faila rakstzīmes?

4. Kas ir pielāgots veids dati un kā šī koncepcija tiek izmantota, strādājot ar brīvpiekļuves failiem ( raf)?

5. Ar kādiem operatoriem no faila raf ieraksti tiek nolasīti un ievietoti failā raf tiek rakstīti jauni ieraksti?

6. Kādam nolūkam indekss tiek definēts un izmantots, strādājot ar failu raf?

7. Kādas ir bināro failu izmantošanas iespējas? Kā tās atveras? Kā notiek lasīšana no binārā faila un rakstīšana binārā failā?

8. Kā var piemērot kontroli BiežiDialogs lai teksta laukā ielādētu teksta faila saturu? Kā izmantot to pašu vadīklu, lai saglabātu rediģēto tekstu teksta failā?

9. Kā jūs varat piemērot kontroli BiežiDialogs lai lejupielādētu faila saturu rtf laukā Bagātsteksta lodziņš? Kā izmantot to pašu vadīklu, lai saglabātu rediģēto tekstu failā rtf?

10. Kā jūs varat piemērot kontroli BiežiDialogs lai mainītu fonta parametru vērtības un mainītu teksta krāsu logā teksta lodziņš(vai atlasīts teksta fragments logā Bagātsteksta lodziņš)?

Piemērs 7.1. Apsveriet lietojumprogrammu, kas parāda rakstīšanu (un lasīšanu no teksta faila) "darbinieka informācija" — katra virkne satur darbinieka identifikācijas numuru, pilnu vārdu, dzimšanas datumu un dzimšanas vietu. Rindas veido tabulu, kas ekrāna forma simulēs 4 Combo Box vadīklas (7.1. att.), veidojot Comb(i) objektu masīvu ar Style rekvizītu, kas iestatīts uz 1 - SimpleCombo.

Iezīmējiet dzēšamo rindiņu", vbExclamation

Comb(j).RemoveItem i

‘Ievietot jauns rekords pie galda:

Privāts Sub mnuInsert_Click()

i% = Comb(0).ListIndex

Ja i< 0 Then

MsgBox "Izvēlieties rindu, ko ievietot pirms tās", vbIzsaukuma zīme

Comb(0).AddItem InputBox("Ievadiet numuru"), t.i

Comb(1).AddItem InputBox("Ievadiet nosaukumu"), t.i

Comb(2).AddItem InputBox("Ievadiet dzimšanas datumu."), t.i

Comb(3).AddItem InputBox("Ievadiet dzimšanas vietu."), t.i

“Ieraksta maiņa tabulā:

Privāts Sub mnuUpdate_Click()

i% = Comb(0).ListIndex

Ja i< 0 Then

MsgBox "Atlasīt rindu, ko mainīt", vbIzsaukuma zīme

Comb(0).Saraksts(i) = InputBox("Ievadiet numuru", Comb(0).Saraksts(i))

Comb(1).Saraksts(i) = InputBox("Ievadiet nosaukumu", Comb(1).Saraksts(i))

Comb(2).Saraksts(i) = InputBox("Ievadiet dzimšanas datumu", Comb(2).Saraksts(i))

Comb(3).Saraksts(i) = InputBox("Ievadiet dzimšanas vietu", Comb(3).Saraksts(i))

"Visas tabulas notīrīšana:

Privāts Sub mnuClear_Click()

‘ Tabulas aizpildīšana ar informāciju no teksta faila:

Privāts Sub mnuLoad_Click()

Atveriet failu “person.txt”, lai ievadītu kā #1

Ievade #1, numb, fio, bdate, bloks

Comb(0).AddItem numb

Comb(1).AddItem fio

Comb(2).AddItem bdate

Comb(3).AddItem bloks

"Tabulas informācijas rakstīšana teksta failā:

Privāts Sub mnuSave_Click()

N% = Comb(0).ListCount

Atveriet failu “person.txt”, lai izvadītu kā Nr. 1

Ja i = 0 līdz N - 1

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

fio = ķemme (1). Saraksts (i)

bdate = CDdate(Comb(2).Saraksts(i))

bloks = Comb (3). Saraksts (i)

Rakstiet #1, numb, fio, bdate, bloc

Lietojumprogrammas izslēgšana:

Privāts Sub mnuExit_Click()

Piemērs 7.2 . Apsveriet lietojumprogrammu, kas demonstrē vadīklu izmantošanu BiežiDialogs lai atvērtu un saglabātu failu, atlasītu fontu un krāsu un rediģētu tekstu.

Formatējiet failu TXT tiks ielādēts teksta laukā (kreisais lauks 7.2. att.), un formāta fails RTF- laukā Bagātsteksta lodziņš(labā mala 7.2. att.).

objektu

Klase

objektu

Īpašums

objektu

Īpašuma vērtība

“Vispārīgie paneļi

dialogs"

Atvērt/Saglabāt kā cilni

Fontu cilne

Krāsu cilne

Tabulā nav redzamas izvēlnes komandu īpašības Fonts, krāsa Un Rediģēt. Zemāk ir procedūras kods arī tikai izvēlnes komandām Fails (atvērts, Saglabāt Un Saglabāt). Koda kompilēšana citām izvēlņu komandām ir šī darba 2.uzdevuma tēma.

Privāts Sub mnuOpen_Click()

CommonDialog1.ShowOpen

F$ = CommonDialog1.FileName

Ja Right(F, 3) = "rtf" Tad

RichTextBox1.LoadFile F

ElseIf Right(F, 3) = "txt" Tad

Atveriet F ievadei kā #1

S$ = ievade (N, 1)

Privāts Sub mnuSave_Click()

CommonDialog1.ShowSave

F$ = CommonDialog1.FileName

Privāts Sub mnuSaveAs_Click()

CommonDialog1.ShowSave

F$ = CommonDialog1.FileName

RichTextBox1.SaveFile F, rtfRTF

Šī darba gaitā skolēnam jāizpilda 2 uzdevumi.

1. vingrinājums. Uzdevuma izpildes procesā studenti apgūst iespējas strādāt ar brīvpiekļuves failiem, kas pieejami VB 6 ( RAF-nejaušipiekļuvifailu).

Dotajai datu bāzes tabulai tiek deklarēts lietotāja definēts datu tips, tiek deklarēts šāda veida mainīgais (pamācība, 108. - 112. lpp.), tiek apkopotas un atkļūdotas procedūras, kas izmanto lietotāja definēto tipa mainīgo.

Jo īpaši tiek ieviestas izvēlnes komandu procedūras. Rakstīt failāRAF Un Lasīt no failaRAF. Tāpat kā 7.1. piemērā, datu rediģēšanai tiek izmantots objektu masīvs. KombinācijaKaste un izvēlne Rediģēt ar piecām apakšizvēlņu komandām: Pievienojiet piezīmi, Dzēst ierakstu, Ievietojiet ierakstu, Rediģēt ierakstu, Skaidrs galds.

1. iespēja.

Deklarējiet pielāgotu datu tipu "Auto Service" datu bāzes tabulai "Auto" (7.1. tabula).

auto

auto

darbības traucējumi

7.1. tabulas apakšējā rindā ir parādīti lauku veidi.

2. iespēja.

Deklarējiet pielāgotu datu tipu Autoservisu datu bāzes tabulai Faults (7.2. tabula).

darbības traucējumi

Vārds

darbības traucējumi

Cena

7.2. tabulas apakšējā rindā ir parādīti lauku veidi.

Izmantojot piemēra lietojumprogrammu 7.1 kā paraugu, organizējiet datu ievadi un rediģēšanu parādītajai tabulai, ierakstot šos datus brīvpiekļuves failā un nolasot datus no brīvpiekļuves faila. Tāpat kā 7.1. piemērā, šīs darbības tiek īstenotas kā izvēlnes komandu darbs, kas parādīts attēlā. 7.1.

2. uzdevums. Aktivitātes ietvaros skolēni 2. piemēra lietojumprogrammai pievieno jaunas funkcijas, kas ļauj lietojumprogrammu uzskatīt par vienkāršu teksta redaktoru.

1. iespēja BiežiDialogsīstenot izvēlnes komandas Fonts Un krāsa(ar apakšizvēlni Rakstzīmju krāsa Un Fona krāsa). Ar šo komandu palīdzību ir jānodrošina fonta izvēle (tā nosaukums, stils un izmērs) atlasītajam teksta fragmentam logā. Bagātsteksta lodziņš, kā arī izvēloties atlasītā fragmenta simbolu krāsu un izvēloties visa šī loga fona krāsu.

Piezīme: Uzstādot objektu BiežiDialogs lai atlasītu fontu, izmantojot rekvizītu (Pielāgots), noteikti iestatiet rekvizīta Flags vērtību uz 1, 2 vai 3 (skatiet rokasgrāmatu, 183. lpp.).

2. iespēja. Izmantojot vadības ierīci BiežiDialogsīstenot izvēlnes komandas Rediģēt(apakšizvēlne Kopēt, Griezt Un ielīmēt), kuras mērķis ir kopēšana vai noņemšana atlasītā teksta fragmenta starpliktuvē, kā arī ievietot uz izvēlēto vietu starpliktuves satura tekstā.

Piezīme: Uz starpliktuvi (objekts starpliktuvē) varat izmantot SetText un GetText metodes:

starpliktuvē. SetText RichTextBox1.SelText

RichTextBox1.SelText = starpliktuve. gettext

Katrai programmai dati ir jāsaglabā diskā un jālasa no diska. Tas ir nepieciešams, piemēram, lai saglabātu programmas iestatījumus, maz ticams, ka lietotājam programma patiks, kas nākamreiz startējot būs jākonfigurē vēlreiz.

Šajā rakstā mēs runāsim par darbu ar teksta failiem, izmantojot Visual Basic.

Faila deskriptors

Lai strādātu ar failiem operētājsistēma izmanto I/O kanālus, t.i. katram atvērtajam failam ir savs numurs.

Programmā Visual Basic ir funkcija bezmaksas fails, kas atgriež bezmaksas kanāla numuru, ko var izmantot darbam ar failu. Ja nav brīvu kanālu, rodas kļūda.

FreeFile[(DiapazonsNumber) ]

DiapazonsNumber- izvēles parametrs, kas ļauj noteikt bezmaksas kanālu diapazonu, ja DiapazonsNumber= 0 (noklusējums), tad kanāla numurs tiek atgriezts no diapazona 1–255 un, ja 1, tad no diapazona 256–511.

MyFile = FreeFile Mainīgajam MyFile ir piešķirts bezmaksas kanāls, un tagad to var izmantot darbam ar failiem

Darbs ar teksta failiem

Visbiežāk ir nepieciešams tikties ar teksta failiem. Teksta faili sastāv no ASCII (American Standard Code for Information Interchange) rakstzīmju kopas.

Pirms sākat rakstīt / lasīt datus, fails ir jāatver, tas tiek darīts, izmantojot operatoru atvērt (Faila nosaukums) Kā #faila_numurs, Kur:

Ievade- atvērt failu lasīšanai, ja fails neeksistē, tad rodas kļūda;

Izvade- rakstīšanai, ja fails neeksistē, tas tiks izveidots, un, ja fails pastāv, tas tiks pārrakstīts;

Pievienot- pievienošanai, ja fails neeksistē, tas tiks izveidots, un, ja fails eksistē, tad dati tiks pievienoti faila beigās.

Teksta failu lasīšanu var veikt divos veidos: lasīt rakstzīmi pēc rakstzīmes, izmantojot funkciju Ievade(Izlasīto_rakstzīmju_skaits, #faila_numurs) un rinda pēc rindas, šim nolūkam tiek izmantota funkcija Līnijas ievade#faila_numurs, Kur_ lasīt.

DimMyFile

Dim S As String "Mainīgais lasīto datu glabāšanai

MyFile = FreeFile

Atvērt ("C:\TEST.txt"), lai ievadītu kā #MyFile

Rindas ievade #MyFile, S "Izlasiet pirmo rindiņu no faila TEST.TXT mainīgajā S

DimMyFile "Deklarējiet mainīgo bezmaksas failam

Dim i As Integer "Mainīgs cilpai

Dim tS As String "Mainīgais stīgu lasīšanai

Dim S As String "Mainīgais, lai saglabātu galīgos datus

MyFile = FreeFile "Piešķiriet bezmaksas kanālu darbam ar failiem

"Atveriet failu TEST.TXT lasīšanai

Ja i = 1 līdz 5

Rindas ievade #MyFile, tS "Izlasiet failu TEST.TXT rindu pa rindiņai

Ja i => 5, tad S = tS "Ja piektā rinda, tad saglabājiet to mainīgajā S

Nākamais i

Aizvērt #MyFile "Aizvērt failu

Dim MyFile "Deklarējiet mainīgo bezmaksas failam

Dim S As String "Mainīgais, lai saglabātu lasītos datus

MyFile = FreeFile "Piešķiriet bezmaksas kanālu darbam ar failiem

Atvērt ("C:\TEST.txt"), lai ievadītu kā #MyFile "Atveriet failu TEST.TXT lasīšanai

S = ievade$(LOG(1), 1) "Izlasiet visu failu mainīgajā S

Aizvērt #MyFile "Aizvērt failu

Ir operatori rakstīšanai failā. Drukāt#faila_numurs, Dati Un Rakstīt#faila_numurs, Dati. Vienīgā atšķirība starp šiem operatoriem ir tā Rakstiet ieraksta datus pēdiņās, un drukāt bez pēdiņām.

Šis kods izveidos jaunu failu TEST.TXT uz C:\ diska un ierakstīs tajā divas rindiņas, pirmo bez pēdiņām un otro ar pēdiņām:

DimMyFile "Deklarējiet mainīgo bezmaksas failam

MyFile = FreeFile "Piešķiriet bezmaksas kanālu darbam ar failiem

Atvērt ("C:\TEST.txt") izvadei kā #MyFile "Atveriet failu TEST.TXT rakstīšanai

Drukājiet #MyFile: "Šo virkni ierakstīja paziņojums Print, tas ir bez pēdiņām..."

Ierakstiet #MyFile: "Šī virkne tika ierakstīta, izmantojot Write paziņojumu, tā ir pēdiņās..."

Aizvērt #MyFile "Aizvērt failu

Tas patiesībā arī viss. Kā jūs droši vien jau sapratāt, faila aizvēršanai izmantotais operators ir Aizvērt#faila_numurs, kurā, # faila_numurs nav jāprecizē.

Raksts ir nedaudz jēls, bet noderēs iesācējiem programmētājiem. Nākamajā reizē es runāšu par darbu ar binārajiem failiem.

8. INFORMĀCIJAS UZGLABĀŠANA UN LASĪŠANA

Lai pēc programmas beigām visi atmiņā izveidotie dati netiktu zaudēti, jums ir jāspēj saglabāt informāciju cietajā diskā. Pretējā gadījumā visa informācija pazudīs bez pēdām. Datus var uzglabāt un lasīt dažādos veidos. Bināros un teksta failus var izmantot, lai strādātu ar dažāda izmēra un formāta informāciju. Varat izmantot Windows reģistru, lai saglabātu nelielu informācijas apjomu. Un vissarežģītākajiem uzdevumiem ir saprātīgi izmantot datu bāzes.

8.1. Failu atvēršana ar "Atvērt »

Fails ir jebkura ārējā datu nesēja nosaukts apgabals. Dati "dzīvo" datora atmiņā, bet faili - cietajā diskā. Programma nedarbojas tieši ar failiem, bet izmanto operētājsistēmu kā starpnieku.

Ir divu veidu failu nosaukumi: pilns - papildus faila nosaukumam tiek norādīta arī faila atrašanās vieta ārējā datu nesējā (piemēram, “C:\Program Files\Microsoft Visual Studio\VB98\VB 6.EXE” ) un īss - tikai faila nosaukums (VB 6.EXE ). Ja faila atrašanās vieta nav norādīta, tas tiks meklēts pašreizējā mapē, pēc noklusējuma - mapē, kurā atrodas jūsu lietojumprogramma. Tūlītējais faila nosaukums sastāv no divām daļām: faktiskā unikālā faila nosaukuma un tā paplašinājuma. Pats nosaukums identificē failu, savukārt paplašinājums parasti norāda faila formātu vai ar kādu programmu tas tika izveidots.

Pirms sākat strādāt ar failu, jums jājautā operētājsistēmai rādītājs (deskriptors) failu. Lai to iegūtu, izmantojiet " FreeFile". Pēc tam, izmantojot paziņojumu "Atvērt", šis rādītājs tiek saistīts ar nepieciešamo failu. Tikai pēc tam programma varēs strādāt ar to. Faila atvēršanas sintakse ir šāda:

Iegūstiet bezmaksas faila rādītāju un piešķiriet to mainīgajam

FileHandle% = FreeFile

' atveriet failu

Atvērt FilePath_

Kā[#]FileHandle%

...(darbs ar failu)

Aizvērt[#]FileHandle

· FileHandle % ir mainīgais, kas saglabā faila rādītāju;

· FreeFile ir funkcijas nosaukums, kas atgriež faila rādītāju;

· Atvērt – operatora nosaukums;

· FilePath - faila pilns nosaukums;

· For ir atslēgvārds, kam seko faila piekļuves režīma apraksts;

· Mode – faila piekļuves režīms (skat. 15. tabulu);

15. tabula

Failu piekļuves režīmi

Piekļuves režīmi

Apraksts

Pievienot

Datu pievienošana esoša teksta faila beigām. Ja fails neeksistē, tas tiks izveidots

Binārs

Faila atvēršana binārajā režīmā, t.i. kā baitu kopa. Ja fails neeksistē, bet tiks izveidots

Ievade

Faila atvēršana lasīšanai teksta formātā

Izvade

Faila atvēršana teksta faila rakstīšanai. Šajā gadījumā visa vecā informācija tiks dzēsta. Ja fails neeksistē, bet tiks izveidots

Nejauši

Faila atvēršana brīvpiekļuves režīmā. Šo režīmu izmanto darbam ar vienkāršiem ierakstiem. Ja fails neeksistē, bet tiks izveidots

· Piekļuve ir izvēles atslēgvārds, kam seko piekļuves veida apraksts;

· AccessType — piekļuves veida apraksts:

· Lasīt - lasīt;

· Rakstīt - ierakstīt;

· Lasīt Rakstīt - lasīt un rakstīt.

Piezīme

Pievienošanas un izvades piekļuves režīmi nodrošina tikai rakstīšanas piekļuvi, tikai ievades lasīšanas piekļuvi un bināro un nejaušās piekļuves veidus.

· LockType ir izvēles parametrs, kas nosaka, vai citas programmas var izmantot šo failu, kamēr jūsu programma ar to strādā. Parasti tas ir saistīts ar tīklu veidošanu (skat. 16. tabulu).

16. tabula

LockType parametra iespējamās vērtības

Nozīme

Apraksts

dalīts

Visiem lietotājiem ar nepieciešamajām tiesībām būs pilna piekļuve failam

slēdzenes lasīt

Faila lasīšana ir bloķēta, bet rakstīšana ir atļauta

Bloķēt rakstīšanu

Rakstīšana failā ir bloķēta, bet lasīšana ir atļauta

Bloķēt Lasīt Rakstīt

Gan lasīšana, gan rakstīšana tajā ir aizliegta.

· Tāpat kā atslēgvārdam, kam seko faila rādītājs.

· # ir rakstzīme, kas norāda, ka aiz tā esošā vērtība ir faila rādītājs.

· Len ir izvēles atslēgvārds, kam jāseko parametram, kas norāda ieraksta garumu.

· CharInBuffer % - ieraksta garums failam, kas atvērts nejaušās piekļuves režīmā (Random).

· Aizvērt ir paziņojums, kas aizver failu, kas saistīts ar norādīto turi.

Ir svarīgi aizvērt failu pēc tam, kad esat pabeidzis darbu ar to. Paziņojums "Aizvērt" atbrīvo faila rādītāju un ar to saistīto atmiņas apgabalu.

Strādājot ar failu, proti, lasot no tā, ļoti svarīgi ir noteikt faila beigas. To var definēt, izmantojot EOF (Faila beigas) funkciju:

EOF (failu rokturis)

· EOF – funkcijas nosaukums;

· FileHandle ir faila rokturis, kura beigas tiek noteiktas.

Funkcija atgriež True (true), ja ir sasniegts faila beigas, pretējā gadījumā tā atgriež False (False).

8.2. Lasīšana un rakstīšana teksta failā

Teksta fails tiek atvērts piekļuves režīmā "Ievade", "Izvade" vai "Pievienot" (skat. 15. tabulu). Šī režīma īpatnība ir tāda, ka tas darbojas tikai ar noteiktām drukājamām rakstzīmēm. Ir bezjēdzīgi strādāt ar servisa simboliem.

Informācijas rakstīšanai tiek izmantoti divi priekšraksti "Drukāt" un "Rakstīt", kuru sintakse ir šāda:

Drukāt #FileHandle%, VarBuffer[;]

Rakstiet #FileHandle%, VarBuffer[;]

· Drukāt / Rakstīt - operatoru atslēgvārdi.

· #FileHandle % - faila rādītājs, kurā tiks ievietota informācija.

· VarBuffer ir vērtība, kas tiks ierakstīta failā.

· ; – neobligāts parametrs, ko izmanto, rakstot teksta failā, nozīmē, ka nākamā vērtība tiks ierakstīta tajā pašā rindā, bet, ja tās nav, tad nākamajā.

Lai nolasītu informāciju no faila, tiek izmantoti operatori "Input" un "Line Input". Sintakse ir līdzīga viena otrai:

Rindas ievade #FileHandle%, VarBuffer

Ievadiet #FileHandle%, VarBuffer

· Line Input / Input - operatoru atslēgvārdi.

· #FileHandle % - faila rādītājs, no kura tiks nolasīta informācija.

· VarBuffer ir mainīgais, kurā tiks nolasīta informācija.

Atšķirība starp rindas ievades un ievades operatoriem ir tāda, ka pirmais ir paredzēts tikai teksta failiem, bet otrais - jebkuram. Teksta failu gadījumā "Ievade" nolasa datus tajā pašā rindā līdz pirmajam atdalītājam (teksta datiem atdalītājs ir "," (komats), bet ciparu datiem - " " (atstarpe) un "," ), un "Līnijas ievade » nolasa visu rindu uzreiz, ignorējot atdalītājus.

Piezīme

Visual Basic nekontrolē iepriekš izveidoto failu formātu. Tāpēc simbolu "2" var nolasīt kā atbilstošo skaitli un otrādi.

8.3. Darbs ar binārajiem failiem

Faili tiek atvērti binārais formāts operators " Atvērt" režīmā " Binārs". Šī režīma īpatnība ir tāda, ka darbs ar failu ir vērsts tikai uz noteiktiem baitiem. Tā kā Visual Basic var adresēt tieši vēlamajā faila vietā, šo režīmu sauc arī par − tiešās piekļuves režīms. Vēl viena šī režīma iezīme ir iespēja vienlaikus rakstīt un lasīt informāciju dažādās faila daļās, to neatverot atkārtoti. Rakstīšana failā, kas atvērts binārajā režīmā, tiek veikta, izmantojot šādu sintaksi:

Ielieciet #FileHandle%, , NameVar

· Put - operatora nosaukums informācijas rakstīšanai.

· RecNumber – faila baita numurs, kurā tiks ierakstīta informācija (izvēles parametrs).

· NameVar ir mainīgais, kura saturs tiks ierakstīts failā.

Informācijas nolasīšana no faila binārajā režīmā tiek veikta, izmantojot šādu paziņojumu:

Iegūstiet #FileHandle%, , NameVar

· Get ir informācijas ierakstīšanas operatora nosaukums.

· FileHandle % — faila rādītājs.

· RecNumber – faila baita numurs, no kura tiks nolasīta informācija (pēc izvēles).

· NameVar - mainīgā nosaukums, kurā tiks ievietota nolasītā informācija.

Tā kā binārais režīms ir vērsts uz informācijas baitiem, tad, lasot no faila, bufera mainīgajam ir jābūt stingri noteiktam tipam: vai nu "Baitam", tad tiks nolasīta baita skaitliskā vērtība, vai arī noteikta garuma rakstzīmei. no vienas rakstzīmes, tad baits tiks nolasīts kā rakstzīme ANSI , kuras kods atbilst baita vērtībai. Šī rakstzīme var būt pat kontroles rakstzīme, ko nevar sasniegt teksta failu gadījumā.

Piezīme

Ja parametra “RecNumber” nav, informācija tiks ierakstīta vai lasīta nākamajā faila baitā pēc tā, ar kuru viņi strādāja iepriekš.

8.4. Grafikas manipulācijas

Grafiskos attēlus var arī saglabāt failos un izgūt no tiem. Lai izvilktu attēlu no bitkartes vai ikonu faila un piešķirtu to vadīklu "PictureBox" un "Image" rekvizītam "Attēls", izmantojiet funkciju "LoadPicture ()" ar šādu sintaksi:

ImageCtrl.Picture = LoadPicture(FilePath)

· ImageCtrl ir attēla loga vadīklas, attēla vadīklas vai formas nosaukums;

· LoadPicture - funkcijas nosaukums;

· FilePath ir faila pilns nosaukums.

SavePicture ImageCtrl .Picture, FilePath

· SavePicture – operatora nosaukums;

· ImageCtrl ir attēla loga vadīklas, attēla vadīklas vai formas nosaukums;

· Attēls - par attēlu atbildīgā objekta īpašuma nosaukums;

· FilePath ir faila pilns nosaukums, kas norāda tā atrašanās vietu diskā.

8.5. Darbs ar datiem reģistrā

Varat izmantot Windows reģistru, lai saglabātu nelielus rakstzīmju formāta informācijas fragmentus. Visual Basic ir četras procedūras, kuras varat izmantot, lai tai piekļūtu. Tos ir ļoti viegli lietot, taču tiem ir viens būtisks trūkums: datiem var piekļūt tikai no noteiktas reģistra atslēgas: "MyComputer \HKEY _CURRENT _USER \Software \VB and VBA Program Settings". Lai piekļūtu citām reģistra atslēgām, jums jāizmanto īpašās funkcijas " Win 32 API".

Lai iegūtu iestatījuma vērtību no Visual Basic specifiskās Windows reģistra atslēgas, izmantojiet šo funkciju:

MyString = GetSetting (VBKeyName, sadaļa, atslēga [,noklusējums])

· MyString - virkne funkcijas atgrieztās vērtības glabāšanai;

· GetSetting ir funkcijas nosaukums.

· VBKeyName ir virknes vērtība, kas ir iekšējās VB/VBA apakšatslēgas nosaukums.

· Atslēga ir virknes vērtība, kas apzīmē parametra nosaukumu sadaļā.

· Noklusējums ir neobligāts arguments, kura vērtība tiks atgriezta kļūdas gadījumā (trūkst parametra).

Lai saglabātu vērtību Windows reģistrā, izmantojiet šādu paziņojumu:

SaveSetting VBKeyName, sadaļa, atslēga, MyString

· SaveSetting ir operatora nosaukums.

· MyString ir virknes mainīgais, kurā tiks ievietota atrastā vērtība.

Lai no reģistra iegūtu masīvu, kurā ir visas parametru vērtības no noteiktas apakšatslēgas, izmantojiet šo funkciju:

MyVariant = SetAllSettings (VBKeyName, sadaļa)

· MyVariant ir “Variant” tipa vērtību masīvs, ko atgriež funkcija.

· SetAllSettings ir funkcijas nosaukums.

· Sadaļa — virknes vērtība, kas apzīmē noteiktas lietojumprogrammas sadaļu vai apakšsadaļu.

Lai noņemtu visu parametru sadaļu, izmantojiet operatoru ar šādu sintaksi:

DeleteSetting VBKeyName, sadaļa, atslēga

· DeleteSetting ir operatora nosaukums.

Drošības jautājumi pašpārbaudei

  1. Kā kādu informāciju var uzglabāt ilgtermiņā?
  2. Kas ir fails?
  3. Kādus failu nosaukumus jūs zināt?
  4. Norādiet operatora "Open" sintaksi. Izskaidrojiet tā parametru mērķi.
  5. Kā es varu organizēt vairāku lietojumprogrammu kopīgu piekļuvi vienam failam vienlaikus?
  6. Kā noteikt, vai failā esošā informācija ir izsmelta?
  7. Kāpēc ir ieteicams aizvērt failu pēc darba ar to?
  8. Kā jūs redzat atšķirību starp teksta un bināro failu režīmiem?
  9. Kā dati tiek nolasīti un ierakstīti teksta faila režīmā?
  10. Kā dati tiek nolasīti un ierakstīti binārā faila režīmā?
  11. Kāda ir atšķirība starp operatoriem "Drukāt" un "Rakstīt", strādājot ar failiem?
  12. Kāda ir atšķirība starp priekšrakstiem "Ievade" un "Līnijas ievade", strādājot ar failiem?
  13. Kā jūs varat strādāt ar grafiskiem datiem?
  14. Kādi ir pamatprincipi darbam ar Windows reģistru?



Tops