|
|
|
|
Példaprogram letöltése
7463 bájt
|
Két érdekes és hasznos függvénnyel ismerkedünk meg mostani cikkünkben. Az egyik segítségével egy lépésben kiegészíthetünk egy állomány nevet azzal az elérési útvonallal, ahonnan az EXE-nk fut. A másik segítségével eldönthetjük, hogy egy állomány név megfelel-e egy általunk adott maszknak. Vagyis, ha az állomány név abc.txt és a maszk *.txt, akkor a függvény igaz értéket ad vissza. A maszkban nem csak a *, hanem a ? karaktert is használhatjuk, sőt…
|
Az első függvény az ExpandFileName lesz, melynek paraméterként meg kell adni egy állomány nevet és visszatérési értékként egy olyan sztringet kapunk, melyben szerepel a megadott állomány név, de most már ki lesz egészítve azzal az elérési útvonallal, amelyből az EXE-t is indítottuk.
Paraméterként nem csak egy állomány nevet adhatunk, tulajdonképpen bármilyen sztringet. Ezt kihasználva az állomány név előtt szerepelhet már egy vagy több alkönyvtár neve. Például, ha az EXE a c:\program könyvtárból indult és paraméterként a data\a.dat sztringet adjuk meg, akkor a visszatérési érték a c:\program\data\a.dat sztring lesz.
Egy állomány név és egy maszk összehasonlítását végzi el a MatchesMask függvény. Első paraméterként az állomány nevet, másodikként a maszkot tartalmazó sztringet kell átadnunk. A visszatérési érték igaz lesz, ha az állomány név megfelel a maszknak.
Ez a maszk a DOS-ból jól ismert * és ? karaktereket tartalmazhatja. A * helyén tetszőleges számú, tetszőleges karakter állhat. A ? helyén csak egy tetszőleges karakter lehet.
Megadhatunk a maszkban egy karakter tömböt is a [ ] jelek között. Ennek az lesz a jelentése, hogy a megadott tömb helyén egy darab karakter megegyezik-e a tömb valamely karakterével.
Ez alapján az "abc.txt" megfelel az "a[bxd]?.*" maszknak.
|
Könyv
Ez a cikk megtalálható ebben a könyvben:
Delphi Software Offline 2001 évkönyv 663. oldal
Felhasználási feltételek
A Software Online szoftverfejlesztői magazin mindegyik cikke, minden megjelent képe, és egyéb publikált anyaga szerzői jog védelme alatt áll! Bármilyen formában történő másodlagos terjesztésük, közzétételük vagy felhasználásuk kizárólag a kiadó előzetes írásbeli engedélyével történhet!
|