Portál AbcLinuxu, 9. května 2025 20:36

Dotaz: přesun/kopírování/smazání/vytvoření souboru programově

30.1.2012 22:57 hubert
přesun/kopírování/smazání/vytvoření souboru programově
Přečteno: 366×
Odpovědět | Admin
Ahoj. Přemýšlím jak volat programově základní operace se soubory. Mám .net mono aplikaci (ale i ceckovou) a pořeboval bych např. programově zkopírovat soubour z jedné cesty do druhé a zobrazovat uživateli informace jako kolik dat bylo už zkopírováno, progress bar, jak dlouho to bude ještě trvat, možnost přerušení a opětovného spuštění kopírování.

Jak se tohle řeší? Spouští se nějak programově příkazy a nebo se volá nějaké API apod. Předem díky za pomoc...
Nástroje: Začni sledovat (0) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

Luboš Doležel (Doli) avatar 31.1.2012 00:59 Luboš Doležel (Doli) | skóre: 98 | blog: Doliho blog | Kladensko
Rozbalit Rozbalit vše Re: přesun/kopírování/smazání/vytvoření souboru programově
Odpovědět | | Sbalit | Link | Blokovat | Admin
Otevřít jeden soubor, otevřít druhý soubor a v cyklu číst a zapisovat. A máte kopírování... Příkazy raději ne.
Bystroushaak avatar 16.2.2012 17:47 Bystroushaak | skóre: 36 | blog: Bystroushaakův blog | Praha
Rozbalit Rozbalit vše Re: přesun/kopírování/smazání/vytvoření souboru programově
Odpovědět | | Sbalit | Link | Blokovat | Admin
Co se linuxu týče, budeš muset použít různé API (které si budeš muset najít), protože progress bary a pauzy z většiny aplikací nedostaneš. Vyjímkou je jen dd, ze kterého se dá získat progressbar přes kill -USR1 $pid a také by se na něj dalo naroubovat pauzování, ale musel by sis to dopočítávat.

Standardní linuxové API pro operace se soubory imho nemá možnost přerušení/progressbaru, takže buď si budeš muset příslušné funkce napsat sám, nebo použít něco existujícího (google určitě pomůže).
blog.rfox.eu
17.2.2012 23:43 Dr. Eddy | skóre: 9 | blog: glog | České Budějovice
Rozbalit Rozbalit vše Re: přesun/kopírování/smazání/vytvoření souboru programově
Odpovědět | | Sbalit | Link | Blokovat | Admin

zkus open(), read(), write()...

ve smycce pak budes z jednoho cist a do druheho zapisovat, nejdriv si ale zjistis velikost souboru, abys pak prubezne mohl pocitat aktualni prubeh, zbyvajici cas a tak...

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.