16 messaggi dal 28 marzo 2011
salve a tutti, ho un problema nel rinominare files. Sto scrivendo un programma che da un file txt estrae i contenuti che mi servono e li copio altrove. Siccome ci sono molteplici con nomi abbastanza simili, per non confonderli pensavo di rinominarli dopo averli "usati" (esempio: da TRR201109.txt a TRR201109.done). Con
Dim salva As String
  salva = tbSearch.Text.Split(".")(0) 
ho provato ad usare
Dim RenameFile As New FileInfo(tbSearch.Text)   
RenameFile.MoveTo(tbSearch.Text & ".done") 

e poi ho provato anche
 My.Computer.FileSystem.MoveFile(tbSearch.Text, shrani2 & ".done")

ottengo sempre lo stesso errore: "The process cannot access the file because it is being used by another process."
Potrebbe essere il fatto che il programma apra il file e che cerchi di rinominarlo prima di chiuderlo? Se e' cosi', come posso rimediare?
Qui posto il codice: http://paste.debian.net/146719/

Grazie,
Manuel
547 messaggi dal 24 maggio 2002
Contributi
Assicurati di fare la Dispose() (o la Close()) di tutti gli oggetti che usi per manipolare i file? Ad esempio il TextWriter?

Marco.
16 messaggi dal 28 marzo 2011
Ottimo. =) Risolto
Ho aggiunto objReader.Dispose() e funziona. All'inizio avevo provato objReader.Close() ma non mi trovava il .Close().
Grazie ancora.
Manuel

Torna al forum | Feed RSS

ASPItalia.com non è responsabile per il contenuto dei messaggi presenti su questo servizio, non avendo nessun controllo sui messaggi postati nei propri forum, che rappresentano l'espressione del pensiero degli autori.