Sign in Join
Wiki copytemporary

Using INI Files/fi: what changed

Revision 0 to 1. Removed lines have a minus sign; added lines have a plus sign.

Title: Using INI Files/fi

OldNewLine
1+## Ini-tiedostot
2+
3+### Johdanto
4+
5+INI-tiedostot ovat ns tekstitiedostoja johon tallennetaan nimi=arvo pareja.
6+
7+INI-tiedostoa voidaan käyttää tallentamaan käyttäjän asetukset helposti. Käytämällä **INIfiles** käännösyksikköä (unit) ja **TINIFile** luokkaa voidaan työskennellä helposti INI-tiedostojen kanssa. Tämä käännösyksikkö (unit) kuuluu FCL:n. Currently only INI files compliant with the \[<http://en.wikipedia.org/wiki/INI_file>\| Microsoft standard\] are supported, so using \[<http://en.wikipedia.org/wiki/INI_file#Sections>\| sections\] is obligatory.
8+
9+`Tällä hetkellä vain INI-tiedostot noudattaen `[`standardin`](http://en.wikipedia.org/wiki/INI_file%7CMicrosoftin)` tuetaan, joten käyttämällä kohdat on pakollista.`
10+
11+### INI-tiedostot
12+
13+INI tiedostoissa käytetään sulkuja luomaan **osioita** (Sections), joka sisältää **avaimet** ja avaimen **arvot**. Avain ja sitä vastaava arvo erotetaan yhtäsuuruusmerkillä ( avain = arvo ).
14+
15+Osioiden nimet laitetaan hakasulkeiden sisään (\[Osio\]).
16+
17+Kommentit ovat yleensä sallittua ja on merkitty puolipisteellä (;) rivin alussa. Koska INI-tiedostot eivät ole täysin standardoituja, muita merkkejä käytetään myös, kuten \#
18+
19+Nykyään XML-tiedostoja käytetään usein merkkijono varastointiin INI-tiedostojen sijasta, koska INI-tiedostot eivät tue suuria merkkijonoja hyvin. Kuitenkin INI-tiedostoa voi käyttää myös Linuxin / Unix-asetuksissa.
20+
21+Esimerkki INI-tiedosto:
22+
23+``` ini
24+; Kommentti. INI-tiedoston alku
25+
26+; Tyhjät rivit ohitetaan
27+
28+; Huomaa tähän ei ole osiota määritelty.
29+Compiler=Delphi
30+; Avain: Compiler
31+; Arvo: Delphi
32+
33+[General]
34+; Tämä aloittaa General osion
35+Compiler=FreePascal
36+; Avain Compiler ja arvo FreePascal
37+```
38+
39+### Ini tiedoston lukemisen esimerkki
40+
41+Alla oleva konsoli (komentorivi) sovellus näyttää kuinka luetaan ini tiedostoja. Testateksi sitä joudut luomaan seuraavanlaisen ini tiedoston joka on nimeltään "C:\DB.ini".
42+
43+Editoi se niin että se sisältää osio nimeltä INIDB ja seuraavia avaimet ja arvot:
44+
45+``` ini
46+[INIDB]
47+; Save as C:\DB.ini
48+Author=Adam
49+Pass=
50+DBFile=C:\Money.dat
51+```
52+
53+Nyt siirrytään koodiin.
54+
55+``` pascal
56+Program IniSample;
57+
58+{$mode objfpc}{$H+}
59+
60+Uses
61+ Classes,SysUtils,INIFiles;
62+
63+Var
64+ INI:TINIFile;
65+ Author,Pass,DBFile:String;
66+ PassEnter:String;
67+
68+begin
69+ // Luodaan olio, täsmennetään sitä niin että se löytää ini-tiedoston:
70+ INI := TINIFile.Create('C:\DB.ini');
71+ // Luetaan merkkijono (string) INI-tiedostosta.
72+ // Voidaan myös lukea boolean tyyppistä tietoa jne.
73+ Author := INI.ReadString('INIDB','Author','');
74+ Pass := INI.ReadString('INIDB','Pass','');
75+ DBFile := INI.ReadString('INIDB','DBFile','');
76+ if Pass <> '' then
77+ begin
78+ Writeln('Password Required');
79+ Repeat
80+ Readln(PassEnter);
81+ if not (PassEnter = Pass) then Writeln('Wrong Password');
82+ until(PassEnter = Pass);
83+ Writeln('Correct Password');
84+ end;
85+ Writeln('Author : '+Author);
86+ Writeln('File : '+DBFile);
87+ Writeln('Password : '+Pass);
88+ Readln;
89+ // Käytön lopuksi täytyy kutsua olion Free metodia
90+ // ... Vaikka tämä olisi kääritty try..finally lohkoon
91+ // niin kohde vapautuu, riippumatta mahdollisista virheistä
92+ Ini.Free;
93+end.
94+```
95+
96+### Luokan perustietoa
97+
98+TINIFile luokassa on monia erilaisia ​​ominaisuuksia, ja toimintoja, joita voidaan käyttää.
99+
100+**CaseSensitive** - Tämän ominaisuuden avulla voit määritellä eroavatko avaimet ja osiot silloin kun kirjaimet ovat isoja tai pieniäi. Oletusarvoisesti ne eivät eroa.
101+
102+**ReadString** - Tällä on kolme arvoa. Esimmäinen kertoo mistä osiosta etsitään. Toinen kertoo avaimen. Kolmas on oletusarvo siihen tapaukseen missä avain ja / tai osio kohta ei löytynyt.
103+
104+**WriteString** - Tällä on myös kolme arvoa. Esimmäinen kertoo osion. Toinen kertoo avaimen ja kolmas on arvo jotka kaikki tallennetaan. Jos avain ja osio on jo olemassa niin avain korvataan uudella arvolla.
105+
106+**ReadSections** - Madollisttaa ottamaan osioita INI-tiedostosta ja laittaa ne TStrings luokkaan (tai TStringList:n AS operatorilla).
107+
108+**DeleteKey** - Poistaa olemassa olevan avaimen tietyssä osiossa.
109+
110+**EraseSection** - Poistaa osion ja kaikki sen tiedot.
111+
112+On olemassa enemmän toimintoja, mutta tämä on tarpeeksi jotta pääset alkuun.
113+
114+### Dokumentaatio
115+
116+[Free Pascal documentation on INI files](http://lazarus-ccr.sourceforge.net/docs/fcl/inifiles/index.html)
117+
118+## Katso myös
119+
120+- [[HistoryFiles]]
121+- [[XML Tutorial]]
122+
123+---
124+*From the Free Pascal wiki, page "Using INI Files/fi", as it stood on 2020-03-04 after a change by Trev, out of the wiki's dump of 2024-05-26. Copyright stays with the author who wrote it, according to the old wiki's [[Licensing]] page. If you have concerns about this material, [message the admin](/wiki-contact).*

Back to history