Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Olá pessoal.
Estou fazendo uma aplicação em C# com verificação de pastas.
Em um certo momento, minha aplicação deve checar se um arquivo existe. Se não existe, ele é criado.
Depois disso eu preciso ler a primeira linha desse arquivo e ver se o caminho que está dentro dele é igual ao que foi passado por parametro.
Segue abaixo uma parte do código:
static void VerificaArquivo(int numero, string PastaAtual)
{
FileInfo VerifArq = new FileInfo(@"C:\MonitPastas\Arq" + numero.ToString() + ".txt");
if (!VerifArq.Exists)
{
VerifArq.Create();
}
// Aqui está dando erro que o arquivo já está sendo usado por outro processo...
StreamReader LeArq = new StreamReader(@"C:\MonitPastas\Arq" + numero.ToString() + ".txt");
string PastaLida = "";
PastaLida = LeArq.ReadLine();
if (!PastaAtual.Equals(PastaLida))
{
LeArq.Close();
VerifArq.Delete();
VerifArq.Create();
StreamWriter EscArq = new StreamWriter(@"C:\MonitPastas\Arq" + numero.ToString() + ".txt");
EscArq.WriteLine(PastaAtual);
LeArq.Close();
}
}Há uma maneira mais fácil de resolver?
Se tivesse um jeito de fazer o FileInfo "soltar" o arquivo, seria mais fácil... mas não tem a opção Close() para ele.
Obrigado!
Carregando comentários...