2012-02-07 17 views
8

Vorrei sapere se è possibile scoprire quando un file viene aggiunto a una cartella in C#. So che puoi vedere l'ora della creazione e molte altre cose nel FileInfo, ma no quando è stato aggiunto.Scopri quando il file viene aggiunto alla cartella

+1

Io in realtà non so qualsiasi C#, ma in generale so che tali informazioni non vengono memorizzate nel file system in modo da non dovrebbe essere a disposizione. L'unica opzione che posso pensare è di prendere "istantanee" di una cartella, controllando quali file ci sono in quel momento. Quindi, torni indietro e prendi un'altra "istantanea" e confronta i due, e verifica se il tuo file è stato aggiunto nel frattempo. Dovresti decidere un intervallo adeguato tra le istantanee. –

+2

Intendi scoprire quando il file è stato aggiunto a una cartella in modo retrospettivo o per ricevere una notifica quando si verifica (come per FileSystemWatcher)? –

+0

Penso che andrò per la soluzione "istantanea". FileSystemWatcher non è proprio quello che sto cercando. Grazie! – Mikkel

risposta

11

È possibile utilizzare System.IO.FileSystemWatcher. Fornisce metodi per fare esattamente quello che si vuole fare:

FileSystemWatcher watcher = new FileSystemWatcher() 
{ 
    Path = stringWithYourPath, 
    Filter = "*.txt" 
}; 
watcher.Created += new FileSystemEventHandler(OnChanged); 
3

FileSystemWatcher è una componente molto potente, che ci permette di connettersi alle directory e guardare per le modifiche specifiche al loro interno, come ad esempio creazione di nuovi file, aggiunta di sottodirectory e ridenominazione di di file o sottodirectory. Ciò rende possibile rilevare facilmente quando determinati file o directory vengono creati, modificati o cancellati. È uno dei membri dello spazio dei nomi System.IO.

Full Tutorial Here

Ha eventi e theyare

  • Creato - sollevato ogni volta che si crea una directory o file.
  • Eliminato - generato ogni volta che una directory o un file vengono cancellati.
  • Rinominato - generato quando il nome di una directory o di un file viene modificato.
  • Modificato in caso di modifiche alle dimensioni, agli attributi di sistema, all'ultima ora di scrittura, all'ultima ora di accesso o alle autorizzazioni di sicurezza NTFS di una directory o di un file.
Problemi correlati