artur17
Rejestracja: 2008-07-11, 13:33 Posty: 78
|
Proste operacje na plikach - AmBasic
Czy da radę w AmBasicu robić takie proste operacje na pliku jak:
- kopiowanie pliku w inne miejsce na dysku;
- przenoszenie pliku w inne miejsce na dysku;
- kasowanie pliku itp...?
|
Autor |
Wiadomość |
Mix-soft.pl
|
|
|
rafal
Ekspert
Rejestracja: 2007-11-16, 15:08 Posty: 4000 Pomógł: 448
|
Kod: dispatch fso = "Scripting.FileSystemObject"
// kasownie pliku fso.deleteFile("c:\\test.txt")
// kopiowanie pliku fso.copyFile("c:\\test.txt","d:\\test.txt")
// przenoszenie pliku fso.moveFile("c:\\test.txt","d:\\test.txt")
|
2009-06-08, 18:24 |
|
|
artur17
Rejestracja: 2008-07-11, 13:33 Posty: 78
|
Dziękuję... :)
|
2009-06-09, 08:10 |
|
|
Jarek75
Ekspert
Rejestracja: 2009-03-07, 11:13 Posty: 597 Pomógł: 34
|
Ambasic chyba nie obsługuje kopiowania. A poza tym:
delete file xxxx
rename (xxx, yyy)
mkdir(xxxx)
find file xxxx
find next file
append ...
Piszę na podstawie helpa. Coma lepiej unikać, bo w ambasicu nie mamy obsługi błędów. Poniższy program wywala się na linii 6.
Kod: dispatch fso = "Scripting.FileSystemObject"
delete file "c:\\test.txt" delete file "c:\\test.txt"
fso.deleteFile("c:\\test.txt") fso.deleteFile("c:\\test.txt")
|
2009-06-15, 09:03 |
|
|
rafal
Ekspert
Rejestracja: 2007-11-16, 15:08 Posty: 4000 Pomógł: 448
|
(1)
Jarek75 pisze: [...]Coma lepiej unikać, bo w ambasicu nie mamy obsługi błędów. Poniższy program wywala się na linii 6. Kod: dispatch fso = "Scripting.FileSystemObject"
delete file "c:\\test.txt" delete file "c:\\test.txt"
fso.deleteFile("c:\\test.txt") fso.deleteFile("c:\\test.txt")
Przed wykonaniem operacji należy sprawdzić czy plik istnieje Kod: dispatch fso = "Scripting.FileSystemObject" if fso.FileExists("c:\\test.txt") fso.deleteFile("c:\\test.txt") endif
if fso.FileExists("c:\\test.txt") fso.deleteFile("c:\\test.txt") endif
|
2009-06-15, 10:42 |
|
|
zz
Rejestracja: 2008-03-10, 14:01 Posty: 593
|
Re: Proste operacje na plikach - AmBasic
ale jeśli nie mam "c:\\test.txt" w zał. kodzie polecenie delete file sPlik nie kasuje Kod: string sPlik, sMaska = "c:\\dane\\*.txt" sPlik = find file ( sMaska ) while sPlik message sPlik delete file sPlik sPlik = find next file wend
_________________ zz
|
2017-10-18, 00:54 |
|
|
zz
Rejestracja: 2008-03-10, 14:01 Posty: 593
|
Re: Proste operacje na plikach - AmBasic
Problem jest chyba w tym, że handel trzyma plik mogę go jakoś zamknąć przed skasowaniem ?
_________________ zz
|
2017-10-18, 13:57 |
|
|
rafal
Ekspert
Rejestracja: 2007-11-16, 15:08 Posty: 4000 Pomógł: 448
|
Re: Proste operacje na plikach - AmBasic
podany wyżej kod działa. pytanie czy to jest cały kod, który testujesz lub co tworzy (i ewentualnie trzyma) plik.
|
2017-10-18, 14:44 |
|
|
zz
Rejestracja: 2008-03-10, 14:01 Posty: 593
|
Re: Proste operacje na plikach - AmBasic
'obrabiam' plik, w pętli wrzucam poszcz. linie do bufora itd.
_________________ zz
|
2017-10-18, 21:58 |
|
|
rafal
Ekspert
Rejestracja: 2007-11-16, 15:08 Posty: 4000 Pomógł: 448
|
Re: Proste operacje na plikach - AmBasic
No to po obrobieniu zamykaj. Close(plik)
|
2017-10-18, 22:55 |
|
|
zz
Rejestracja: 2008-03-10, 14:01 Posty: 593
|
Re: Proste operacje na plikach - AmBasic
a jak znaleźć numer pliku na podst. jego nazwy? (mam błąd 'niemożliwa konwersja string na int')
_________________ zz
|
2017-10-19, 12:47 |
|
|
rafal
Ekspert
Rejestracja: 2007-11-16, 15:08 Posty: 4000 Pomógł: 448
|
Re: Proste operacje na plikach - AmBasic
jaki numer? jak masz błąd pokaż kod.
|
2017-10-19, 12:50 |
|
|
zz
Rejestracja: 2008-03-10, 14:01 Posty: 593
|
Re: Proste operacje na plikach - AmBasic
Kod: // o każdej pełnej godzinie string ostatnie_wykonanie = "00"
int sub OnTimer() string sPlik, sMaska = "c:\\dane\\*.txt" if mid(time(),1,2) != ostatnie_wykonanie then ostatnie_wykonanie = mid(time(),1,2) sPlik = find file ( sMaska ) while sPlik wywolanie_procedury_z_parametrem(sPlik) // close(sPlik) delete file sPlik sPlik = find next file wend endif OnTimer = 0 endsub
_________________ zz
|
2017-10-19, 14:12 |
|
|
rafal
Ekspert
Rejestracja: 2007-11-16, 15:08 Posty: 4000 Pomógł: 448
|
Re: Proste operacje na plikach - AmBasic
No i wazne co robisz tu Kod: wywolanie_procedury_z_parametrem(sPlik)
|
2017-10-19, 15:53 |
|
|
zz
Rejestracja: 2008-03-10, 14:01 Posty: 593
|
Re: Proste operacje na plikach - AmBasic
Ładuję poszcz. linie do bufora i obrabiam. wyszukuję i usuwam fragmenty tekstu (czyli zmieniam zawartość pliku, o tym nie pomyślałem) co mogę zrobić? nie muszę zapisywać obrobionego pliku, potrzebne informacje mam już wyciągnięte
_________________ zz
|
2017-10-20, 07:52 |
|
|