(findfile filename) |
|
Argumenty: |
|
filename
|
- jméno hledaného souboru nebo adresáře |
|
Popis: |
|
- prohledává cesty AutoCADu a hledá specifikovaný soubor nebo
adresář |
|
Návratové hodnoty: |
|
- kompletní cestu a jméno souboru s koncovkou - je-li
nalezen |
|
- nil - v opačném případě |
|
Příklady: |
|
Hledání souboru xyz.txt, který se nachází v adresáři \acad:
|
|
(findfile "xyz.txt") |
|
|
vrací "C:\\Program Files\\ACAD\\xyz.txt" |
|
|
Hledání adresáře acad, který se nachází v adresáři \acad:
|
|
(findfile "xyz.txt") |
|
|
vrací "C:\\Program Files\\ACAD" |
|
|
Pozor: |
|
V AutoCADu R13 poslední příkaz vrátí nil !!! |
(open filename mode) |
|
Argumenty: |
|
filename
|
- jméno souboru s koncovkou, není-li specifikována cesta je
prohledáván pouze adresář start-up |
|
mode
|
- způsob otevření souboru: |
|
|
|
r
|
- otevřen pro čtení |
|
|
|
w
|
- otevřen pro zápis |
|
|
|
|
- neexistuje-li otvíraný soubor, je soubor vytvořen |
|
|
|
|
- existuje-li otvíraný soubor, je soubor přepsán |
|
|
|
a
|
- otevřen pro přidání |
|
|
|
|
- neexistuje-li otvíraný soubor, je soubor vytvořen |
|
|
|
|
- existuje-li otvíraný soubor, jsou data přidána na konec
souboru |
|
Popis: |
|
- otevře soubor pro přístup I/O funkcí AutoLISPu |
|
Návratové hodnoty: |
|
- ukazatel na soubor - vše proběhlo v pořádku |
|
- nil - v případě, že mód otevírání je "read"
a specifikovaný soubor filename neexistuje |
|
Příklady: |
|
Otevření existujícího souboru: |
|
(setq
a (open "c:/program files/acad2000/help/filelist.txt" "r"))
|
|
|
vrací #<file "c:/program files/acad2000/help/filelist.txt"> |
(read-char [file-desc]) |
|
Argumenty: |
|
file-desc
|
- popisovač souboru vrácený funkcí open |
|
|
- není-li file-desc specifikován očekává se vstup z
klávesnice |
|
Popis: |
|
- získání ASCII kódu znaku přečteného ze vstupního bufferu
klávesnice nebo z otevřeného souboru |
|
Návratové hodnoty: |
|
- integer - reprezentuje ASCII kód znaku |
|
- ASCII kód 10 - přečte-li funkce read-char
znak end-of-line |
|
Příklady: |
|
Příkaz read-char bez argumentů - čtení z bufferu klávesnice: |
|
(read-char) |
|
|
- jelikož je buffer klávesnice prádný, čeká funkce na vstup
od uživatele: |
|
ABC |
|
|
- vrací 65 |
|
(read-char) |
|
|
- vrací 66 |
|
(read-char) |
|
|
- vrací 67 |
|
(read-char) |
|
|
- vrací 10 - buffer klávesnice je prázdný |
|
(read-char) |
|
|
- jelikož je buffer klávesnice prádný, čeká funkce na nový
vstup od uživatele |
(read-line [file-desc]) |
|
Argumenty: |
|
file-desc
|
- popisovač souboru vrácený funkcí open |
|
|
- není-li file-desc specifikován očekává se vstup z
klávesnice |
|
Popis: |
|
- čte znaky z klávesnice nebo ze souboru do té doby, než je
indikována značka end-of-line |
|
Návratové hodnoty: |
|
- přečtený řetězec (bez značky end-of-line) |
|
- nil - v případě konce souboru |
|
Příklady: |
|
Otevření souboru pro čtení: |
|
(setq
f (open
"c:\\my documents\\new.tst" "r")) |
|
|
vrací #<file "c:\\my documents\\new.tst"> |
|
Přečtení řádky ze souboru: |
|
(read-line f) |
|
|
vrací "To boldly go where nomad has gone before." |
(vl-directory-files [directory
pattern directories]) |
|
Argumenty: |
|
directory
|
- jméno adresáře |
|
|
- není-li argument uveden funkce vl-directory-files
použije aktuální adresář |
|
pattern
|
- maska pro výpis souborů ve formátu DOS |
|
|
- není-li argument uveden funkce vl-directory-files
použije masku "*.*" |
|
directories
|
- integer - co se má vypisovat: |
|
|
|
-1
|
- výpis pouze adresářů |
|
|
|
0
|
- výpis souborů a adresářů (implicitní nastavení) |
|
|
|
1
|
- výpis pouze souborů |
|
Popis: |
|
- vypíše všechny soubory v zadaném adresáři |
|
Návratové hodnoty: |
|
- seznam souborů a jmen cest |
|
- nil - žádný soubor neodpovídá masce |
|
Příklady: |
|
_$ (vl-directory-files "c:/acadwin" "acad*.exe") |
|
|
vrací ("ACAD.EXE" "ACADAPP.EXE" "ACADL.EXE"
"ACADPS.EXE") |
|
_$ (vl-directory-files "e:/acadwin" nil -1) |
|
|
vrací ("." ".." "SUPPORT"
"SAMPLE" "ADS" "FONTS" "IGESFONT"
"SOURCE" "ASE") |
|
_$ (vl-directory-files "E:/acad13c4" nil -1) |
|
|
vrací ("." ".." "WIN" "COM"
"DOS") |
(vl-file-copy source-file destination-file
[append]) |
|
Argumenty: |
|
source-file
|
- zdrojový soubor, není-li specifikována cesta je prohledáván
pouze adresář start-up |
|
destination-file
|
-cílový soubor, není-li specifikována cesta je prohledáván
pouze adresář start-up |
|
append
|
- je-li uveden a různý od nil - je zdrojový soubor připojen
za cílový soubor |
|
Popis: |
|
- zkopíruje nebo přidá obsah jednoho souboru do druhého |
|
Návratové hodnoty: |
|
- integer - proběhlo-li kopírování v pořádku |
|
- nil - v opačném případě |
|
- typické případy vrácení nil: |
|
|
- source-file není čitelný (při otevření nutný mód
"r") |
|
|
- source-file je adresář |
|
|
- append? - argument append není uveden nebo je rovný
nil a destination-file existuje |
|
|
- destination-file nemůže být otevřen pro zápis |
|
|
- source-file je stejný jako destination-file |
|
Příklady: |
|
Zkopírování souboru autoexec.bat na newauto.bat: |
|
_$ (vl-file-copy "c:/autoexec.bat" "c:/newauto.bat")
|
|
|
vrací 1417 |
|
|
Zkopírování souboru test.bat na newauto.bat: |
|
_$ (vl-file-copy "c:/test.bat" "c:/newauto.bat") |
|
|
vrací nil - kopírování selže, protože soubor newauto.bat
již existuje a nebyl uveden argument append |
(vl-file-delete filename) |
|
Argumenty: |
|
filename
|
- jméno souboru, není-li specifikována cesta je
prohledáván pouze adresář start-up |
|
Popis: |
|
- vymaže soubor |
|
Návratové hodnoty: |
|
- T - vše proběhlo v pořádku |
|
- nil - vymazání souboru selhalo |
|
Příklady: |
|
Vymazání souboru newauto.bat: |
|
_$ (vl-file-delete "newauto.bat") |
|
|
vrací nil - vymazání nebylo uskutečněno, protože v
adresáři AutoCAD (start-up) není žádný soubor newauto.bat |
|
|
Vymazání souboru newauto.bat v adresáři c:\: |
|
_$ (vl-file-delete "c:/newauto.bat") |
|
|
vrací T - vymazání bylo uskutečněno, protože v adresáři
c:\ soubor newauto.bat existoval |
(vl-file-directory-p
filename) |
|
Argumenty: |
|
filename
|
- jméno souboru nebo adresáře, není-li specifikována cesta
je prohledáván pouze adresář start-up |
|
Popis: |
|
- zjistí zda argument filename ukazuje na adresář |
|
Návratové hodnoty: |
|
- T - jméno filename je jméno adresáře |
|
- nil - v opačném případě |
|
Příklady: |
|
_$ (vl-file-directory-p "sample") |
|
|
vrací T
|
|
_$ (vl-file-directory-p "yinyang") |
|
|
vrací nil |
|
_$ (vl-file-directory-p "c:/program files/acad2000")
|
|
|
vrací T |
|
_$ (vl-file-directory-p "c:/program files/acad2000/vlisp/yinyang.lsp")
|
|
|
vrací nil |
(vl-file-systime filename) |
|
Argumenty: |
|
filename
|
- jméno souboru k ověření |
|
Popis: |
|
- zjištění času poslední modifikace specifikovaného souboru |
|
Návratové hodnoty: |
|
- seznam - obsahující datum a čas poslední modifikace |
|
- seznam obsahuje následující prvky: |
|
|
year month day-of-week day-of-month
|
|
|
hours minutes seconds
|
|
Poznámka: PONDĚLÍ je den číslo 1 atd. |
|
- nil - soubor nebyl nalezen |
|
Příklady: |
|
_$ (vl-file-systime "c:/program files/acad2000/sample/visuallisp/yinyang.lsp")
|
|
|
vrací (1998 4 3 8 10 6 52 0) |
|
|
- hodnota značí, že soubor byl modifikován 10. 4. 1998 ve
čtvrtek v 6:52:0 |
(vl-filename-mktemp [pattern
directory extension]) |
|
Argumenty: |
|
pattern
|
- řetězec - šablona souboru |
|
|
- je-li argument rovný nil nebo není uveden použije funkce
vl-filename-mktemp jméno "$VL~~" |
|
directory
|
- jméno adresáře pro temporary soubory |
|
|
- je-li argument rovný nil nebo není uveden použije funkce
vl-filename-mktemp vybere z následujících adresářů v následujícím
pořadí: |
|
|
|
- adresář specifikovaný v argumentu pattern |
|
|
|
- adresář specifikovaný v proměnné TMP |
|
|
|
- adresář specifikovaný v proměnné TEMP |
|
|
|
- v aktuálním adresáři |
|
extension
|
-jméno koncovky přiřazené k souboru |
|
|
- je-li argument rovný nil nebo není uveden použije funkce
vl-filename-mktemp vybere z následujících adresářů v následujícím
pořadí: |
|
Popis: |
|
- vypočítá jedinečné jméno souboru použitelné jako temporary
soubor |
|
Návratové hodnoty: |
|
- řetězec - jméno souboru v následujícím formátu: directory\base<.extension>
kde: |
|
|
base - do 5 znaků vytvořeno z pattern |
|
|
XXX - 3 znaky, jedinečná kombinace |
|
- všechny soubory generované funkcí vl-filename-mktemp během
práce ve VLISPu jsou po skončení vymazány |
|
Příklady: |
|
_$ (vl-filename-mktemp) |
|
|
vrací "C:\\TMP\\$VL~~004" |
|
_$ (vl-filename-mktemp "myapp.del") |
|
|
vrací "C:\\TMP\\MYAPP005.DEL" |
|
_$ (vl-filename-mktemp "c:\\acadwin\\myapp.del") |
|
|
vrací "C:\\ACADWIN\\MYAPP006.DEL" |
|
_$ (vl-filename-mktemp "c:\\acadwin\\myapp.del") |
|
|
vrací "C:\\ACADWIN\\MYAPP007.DEL" |
|
_$ (vl-filename-mktemp "myapp" "c:\\acadwin") |
|
|
vrací "C:\\ACADWIN\\MYAPP008" |
|
_$ (vl-filename-mktemp "myapp" "c:\\acadwin" ".del") |
|
|
vrací "C:\\ACADWIN\\MYAPP00A.DEL" |
(write-line string [file-desc])
|
|
Argumenty: |
|
string
|
- řetězec |
|
file-desc
|
- popisovač souboru vrácený funkcí open |
|
Popis: |
|
- napíše řetězec na obrazovku nebo do souboru |
|
Návratov8 hodnota: |
|
- řetězec |
|
Příklady: |
|
Otevření souboru: |
|
(setq
f (open "c:\\my documents\\new.tst" "w")) |
|
|
vrací #<file "c:\\my documents\\new.tst"> |
|
|
|
Napsání řádku do souboru: |
|
(write-line "To boldly go where nomad has gone before."
f) |
|
|
vrací "To boldly go where nomad has gone before." |
|
|
|
Řádek není fyzicky zapsán do souboru dokud není soubor uzavřen: |
|
(close f) |
|
|
vrací nil |