Posty bez odpowiedzi |oraz Aktywne tematy Dzisiaj jest 2024-11-21, 23:06x



Odpowiedz w temacie  [ Posty: 17 ]  Przejdź na stronę 1, 2  Następna
Proste operacje na plikach - AmBasic 
Autor Wiadomość

Rejestracja: 2008-07-11, 13:33
Posty: 78
Post 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...?


2009-06-08, 14:18
Wyświetl profil
Autor Wiadomość
 


Ekspert
Ekspert

Rejestracja: 2007-11-16, 15:08
Posty: 4000
Pomógł: 448
Post 
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")

_________________
Skontaktuj się z Ekspertem | Zamów dodatek

tel. 22 7 538 538
ekspert@mojaSymfonia.pl
http://www.mojaSymfonia.pl


2009-06-08, 18:24
Wyświetl profil

Rejestracja: 2008-07-11, 13:33
Posty: 78
Post 
Dziękuję... :)


2009-06-09, 08:10
Wyświetl profil
Ekspert
Ekspert
Awatar użytkownika

Rejestracja: 2009-03-07, 11:13
Posty: 597
Pomógł: 34
Post 
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
Wyświetl profil
Ekspert
Ekspert

Rejestracja: 2007-11-16, 15:08
Posty: 4000
Pomógł: 448
Post 
Ta wiadomość była pomocna.(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


_________________
Skontaktuj się z Ekspertem | Zamów dodatek

tel. 22 7 538 538
ekspert@mojaSymfonia.pl
http://www.mojaSymfonia.pl


2009-06-15, 10:42
Wyświetl profil

Rejestracja: 2008-03-10, 14:01
Posty: 593
Post 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
Wyświetl profil

Rejestracja: 2008-03-10, 14:01
Posty: 593
Post 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
Wyświetl profil
Ekspert
Ekspert

Rejestracja: 2007-11-16, 15:08
Posty: 4000
Pomógł: 448
Post 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.

_________________
Skontaktuj się z Ekspertem | Zamów dodatek

tel. 22 7 538 538
ekspert@mojaSymfonia.pl
http://www.mojaSymfonia.pl


2017-10-18, 14:44
Wyświetl profil

Rejestracja: 2008-03-10, 14:01
Posty: 593
Post Re: Proste operacje na plikach - AmBasic
'obrabiam' plik,
w pętli wrzucam poszcz. linie do bufora itd.

_________________
zz


2017-10-18, 21:58
Wyświetl profil
Ekspert
Ekspert

Rejestracja: 2007-11-16, 15:08
Posty: 4000
Pomógł: 448
Post Re: Proste operacje na plikach - AmBasic
No to po obrobieniu zamykaj. Close(plik)

_________________
Skontaktuj się z Ekspertem | Zamów dodatek

tel. 22 7 538 538
ekspert@mojaSymfonia.pl
http://www.mojaSymfonia.pl


2017-10-18, 22:55
Wyświetl profil

Rejestracja: 2008-03-10, 14:01
Posty: 593
Post 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
Wyświetl profil
Ekspert
Ekspert

Rejestracja: 2007-11-16, 15:08
Posty: 4000
Pomógł: 448
Post Re: Proste operacje na plikach - AmBasic
jaki numer?
jak masz błąd pokaż kod.

_________________
Skontaktuj się z Ekspertem | Zamów dodatek

tel. 22 7 538 538
ekspert@mojaSymfonia.pl
http://www.mojaSymfonia.pl


2017-10-19, 12:50
Wyświetl profil

Rejestracja: 2008-03-10, 14:01
Posty: 593
Post 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
Wyświetl profil
Ekspert
Ekspert

Rejestracja: 2007-11-16, 15:08
Posty: 4000
Pomógł: 448
Post Re: Proste operacje na plikach - AmBasic
No i wazne co robisz tu

Kod:
    wywolanie_procedury_z_parametrem(sPlik)   

_________________
Skontaktuj się z Ekspertem | Zamów dodatek

tel. 22 7 538 538
ekspert@mojaSymfonia.pl
http://www.mojaSymfonia.pl


2017-10-19, 15:53
Wyświetl profil

Rejestracja: 2008-03-10, 14:01
Posty: 593
Post 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
Wyświetl profil
Wyświetl posty nie starsze niż:  Sortuj wg  
Odpowiedz w temacie   [ Posty: 17 ]  Przejdź na stronę 1, 2  Następna
   Podobne tematy   Autor   Odpowiedzi   Odsłony   Ostatni post 
Na tym forum nie ma nowych nieprzeczytanych postów. AMBASIC string proste pytanie - trudna odpowiedź

w Programowanie

marty123

2

2689

2018-06-05, 09:17

bongos Wyświetl najnowszy post

Na tym forum nie ma nowych nieprzeczytanych postów. Format nagłówka w plikach inwentaryzacyjnych

w Programowanie

robert

2

2723

2008-11-22, 09:16

robert Wyświetl najnowszy post

Na tym forum nie ma nowych nieprzeczytanych postów. H50 programowe operacje na dacie

w Programowanie

marty123

2

4998

2022-12-02, 21:37

marty123 Wyświetl najnowszy post

Na tym forum nie ma nowych nieprzeczytanych postów. KDP 2010 - Wzorzec - pracownicy - operacje ??

w Programy Kadrowo Płacowe

gregee123

6

3774

2009-09-01, 10:03

Jarek75 Wyświetl najnowszy post



Kto jest online

Użytkownicy przeglądający to forum: Nie ma żadnego zarejestrowanego użytkownika i 17 gości


Nie możesz tworzyć nowych tematów
Nie możesz odpowiadać w tematach
Nie możesz zmieniać swoich postów
Nie możesz usuwać swoich postów
Nie możesz dodawać załączników

Szukaj:
Przejdź do:  
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group.
Support forum phpbb by phpBB Assistant